Rust 标记一个属性或函数为废弃

如题,演示Rust 标记一个属性或函数为废弃的基本使用方法:

示例:

rust 复制代码
use serde::{Deserialize, Serialize};

#[derive(Clone, Debug, Serialize, Deserialize, Default)]
pub struct GrpcOptions {
    pub addr: String,
    pub max_recv_message_size: u32,
    pub max_send_message_size: u32,
    pub hostname: String,
}

#[derive(Clone, Debug, Serialize, Deserialize, Default)]
#[serde(default)]
pub struct DatanodeOptions {
    pub node_id: Option<u64>,
    pub require_lease_before_startup: bool,
    pub init_regions_in_background: bool,
    #[deprecated(note = "use `grpc.hostname` instead")]
    pub rpc_hostname: Option<String>,
    pub grpc: GrpcOptions,
}

fn main() {
    let mut datanode = DatanodeOptions::default();
    datanode.grpc.hostname = "hostname".to_string();
    datanode.rpc_hostname = Some("dep_hostname".to_string());
    println!("{:?}", datanode);
}

最后输出如下所示:

相关推荐
于先生吖几秒前
2026 新版 Java 同城上门家政服务系统源码 完整可运营
java·开发语言
MIXLLRED4 分钟前
Python模块详解(一)—— socket 和 threading 模块
开发语言·python·socket·threading
gp3210266 分钟前
什么是Spring Boot 应用开发?
java·spring boot·后端
csbysj20208 分钟前
桥接模式(Bridge Pattern)
开发语言
mcooiedo12 分钟前
Spring Boot与MyBatis
spring boot·后端·mybatis
Yupureki20 分钟前
《C++实战项目-高并发内存池》4.CentralCache构造
c语言·开发语言·c++·单例模式·github
2401_8980751223 分钟前
分布式系统监控工具
开发语言·c++·算法
惊讶的猫24 分钟前
springboot常用注解
java·spring boot·后端
掘金者阿豪26 分钟前
MySQL迁移,别再信“改几行配置就能跑”:金仓KingbaseES深度兼容实战
后端
Cosolar1 小时前
大模型多轮对话自动上下文压缩
人工智能·后端·面试