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

最后输出如下所示:

相关推荐
小短腿的代码世界7 小时前
Qt 股票订单撮合引擎:高频交易系统的核心心脏
开发语言·数据库·qt·系统架构·交互
养肥胖虎7 小时前
Docker学习笔记:后端、数据库和反向代理怎么一起跑起来
后端·nginx·docker·postgresql·go·部署
晓杰'7 小时前
从0到1实现 Balatro 游戏后端(2):NestJS框架搭建与项目结构设计
后端·websocket·typescript·node.js·游戏开发·项目实战·nestjs
无所事事O_o8 小时前
二次验证码TOTP 使用说明
后端·二次验证码·谷歌验证器
ltl8 小时前
Multi-Head Attention:为什么要分多个头
后端
谙弆悕博士8 小时前
快速学C语言——第16章:预处理
c语言·开发语言·chrome·笔记·创业创新·预处理·业界资讯
ltl9 小时前
Scaled Dot-Product:那个根号 d_k 是怎么来的'
后端
yuan199979 小时前
基于 C# 实现的 Omron HostLink (FINS) 协议 PLC 通讯
开发语言·c#
qq_422828629 小时前
android图形学之SurfaceControl和Surface的关系 五
android·开发语言·python
如竟没有火炬10 小时前
用队列实现栈
开发语言·数据结构·python·算法·leetcode·深度优先