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

最后输出如下所示:

相关推荐
IT_陈寒7 小时前
Redis主从切换竟让业务卡了3秒?这个坑我替你踩了
前端·人工智能·后端
辛苦才能8 小时前
C++多态原理:虚函数表的内存布局与动态绑定的汇编真相
开发语言·c++
铲灰8 小时前
做个总结而已
开发语言
IvanCodes8 小时前
Python 文件操作(十二):文件与目录的读写
开发语言·python
右耳朵猫AI8 小时前
Java周刊2026W38 | Micronaut 修补三漏洞、JDK 27 提速 54%、Jetty 修复抖动测试
java·后端·spring
步行cgn8 小时前
BeanFactory 与 FactoryBean 的区别:面试深度解析
java·后端·spring
mldong8 小时前
一套审批流要写多少代码:13 个框架的接入 diff 我数了一遍,最少 422 行,最多 1798 行
后端·架构
神仙别闹16 小时前
基于 C++ 实现(控制台)学生成绩管理系统
开发语言·c++
伞伞悦读17 小时前
【第36期】Python 目录与路径详解:pathlib、文件遍历、创建、复制、移动和删除风险
开发语言·python
GreenTea17 小时前
GrokBot 核心成员 Lauren Tan:每月交付 2000 个 PR 的人,是怎么用 AI 的
前端·后端·架构