91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Rust的proc-macro-error怎么使用

發布時間:2021-12-27 09:41:18 來源:億速云 閱讀:324 作者:iii 欄目:大數據

這篇文章主要講解了“Rust的proc-macro-error怎么使用”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Rust的proc-macro-error怎么使用”吧!

Rust 是 k8s 的不錯選擇

選擇使用Rust的原因有兩個:1、Rust對WebAssembly編譯提供了一些最好的支持(稍后會詳細介紹),1、想證明 Rust 的優勢可以應用于 Kubernetes 生態系統。

proc-macro-error

proc-macro-error 的目標是使過程宏中的錯誤報告變得輕松便捷。
使用實例速覽:

use proc_macro_error::*;              use proc_macro::TokenStream;              use syn::{spanned::Spanned, DeriveInput, ItemStruct, Fields, Attribute , parse_macro_input};              use quote::quote;            fn process_attrs(attrs: &[Attribute]) -> Vec<Attribute> {                  attrs                      .iter()                      .filter_map(|attr| match process_attr(attr) {                          Ok(res) => Some(res),                          Err(msg) => {                              emit_error!(attr, "Invalid attribute: {}", msg);                              None                          }                      })                      .collect()              }              fn process_fields(_attrs: &Fields) -> Vec<TokenStream> {                  // processing fields in pretty much the same way as attributes                  unimplemented!()              }                #[proc_macro]              #[proc_macro_error]              pub fn make_answer(input: TokenStream) -> TokenStream {                  let input = parse_macro_input!(input as ItemStruct);                  let attrs = process_attrs(&input.attrs);              
                 // abort right now if some errors were encountered                  // at the attributes processing stage                  abort_if_dirty();                  let fields = process_fields(&input.fields);                  // no need to think about emitted errors                  // #[proc_macro_error] will handle them for you                  //                  // just return a TokenStream as you normally would                  quote!(/* stuff */).into()              }

感謝各位的閱讀,以上就是“Rust的proc-macro-error怎么使用”的內容了,經過本文的學習后,相信大家對Rust的proc-macro-error怎么使用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

郓城县| 水城县| 襄垣县| 商洛市| 元江| 乐至县| 宁夏| 永清县| 资源县| 尼木县| 宁陕县| 铅山县| 清流县| 新乐市| 息烽县| 霸州市| 略阳县| 杭锦后旗| 蒲城县| 梁山县| 互助| 阳江市| 青铜峡市| 缙云县| 郧西县| 兴和县| 灌南县| 三明市| 颍上县| 叙永县| 敦煌市| 勃利县| 禹州市| 南宁市| 华池县| 彰化县| 大荔县| 双桥区| 蓬安县| 鹤壁市| 平阴县|