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

最后输出如下所示:

相关推荐
java1234_小锋1 分钟前
Spring Boot 的核心注解 @SpringBootApplication 由哪三个注解组成?
java·spring boot·后端
Master_Azur1 分钟前
Web后端基础-Spring分层解耦
spring boot·后端·spring
踏着七彩祥云的小丑9 分钟前
Go学习第8天:接口 + 泛型 + 错误处理
开发语言·学习·golang·go
聆风吟º11 分钟前
Python基础数据类型(一):数字类型
开发语言·python·float·int·bool·数字类型
SimonKing14 分钟前
别再自己写脚本了!DeepSeek三秒生成,豆包直接出片
java·后端·程序员
铁皮饭盒15 分钟前
Bun + SQLite 10个实用技巧
前端·javascript·后端
小灰灰搞电子19 分钟前
C++ boost::container 详解:高性能容器库完全指南
开发语言·c++·boost
Brilliantwxx21 分钟前
【C++】 C++11 知识点梳理(上)
开发语言·c++
飞天狗11122 分钟前
零基础JavaWeb入门——第4课:表单处理 —— 浏览器怎么把数据发给服务器
java·开发语言·前端·后端·servlet
多彩电脑28 分钟前
向AIDE(安卓设备上的Android Studio)导入aar库
android·java·开发语言·androidx