1
我想要生成一個使用結構字段作爲關鍵字的HashMap
,並使用usize
整數作爲值。如何在編譯器插件中獲取struct字段和字段類型?
pub struct Article {
title: String,
content: String,
category: String,
comments: Vec<Comment>
}
pub struct Comment {
content: String
}
我的預期輸出是:
{
title: 0,
content: 1,
category: 2
comments[].content: 3
}
我的解決辦法是impl
我的兩個Article
和Comment
特質FieldsMapping
:
pub trait FieldsMapping {
fn get_fields_map(&self) -> HashMap<String, usize>;
}
我想自定義導出FieldsMapping
寫一個編譯器插件。
我的問題是:我如何獲得編譯器插件中的所有字段?我怎麼能知道字段類型是Vec
或其他?