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);
}

最后输出如下所示:

相关推荐
Boop_wu10 分钟前
[Java 算法] 栈
java·开发语言·算法
来自远方的老作者11 分钟前
第7章 运算符-7.5 比较运算符
开发语言·数据结构·python·算法·代码规范·比较运算符
南境十里·墨染春水13 分钟前
C++笔记 Lambda表达式
开发语言·c++·笔记
写Cpp的小黑黑15 分钟前
时间同步(无需NTP):以time.is网站为例
后端
We་ct17 分钟前
LeetCode 201. 数字范围按位与:位运算高效解题指南
开发语言·前端·javascript·算法·leetcode·typescript
程序员榴莲17 分钟前
Java(十二)抽象类
java·开发语言
木子欢儿24 分钟前
在 Fedora 上配置 Go 语言(Golang)开发环境
开发语言·后端·golang
超级大只老咪33 分钟前
线性递推通用模板
java·开发语言·算法
coNh OOSI41 分钟前
Spring Boot问题总结
java·spring boot·后端
Dream of maid42 分钟前
Python基础 6 (面向对象)
开发语言·python