Reduce json nesting
diff --git a/codegen/src/gen.rs b/codegen/src/gen.rs
index 9f622b9..c954961 100644
--- a/codegen/src/gen.rs
+++ b/codegen/src/gen.rs
@@ -340,7 +340,9 @@
match ty {
types::Type::Box(t) => box_visit(&*t, features, types, kind, name),
types::Type::Vec(t) => vec_visit(&*t, features, types, kind, name),
- types::Type::Punctuated(t, _) => punctuated_visit(&*t, features, types, kind, name),
+ types::Type::Punctuated(p) => {
+ punctuated_visit(p.element(), features, types, kind, name)
+ }
types::Type::Option(t) => option_visit(&*t, features, types, kind, name),
types::Type::Tuple(t) => tuple_visit(t, features, types, kind, name),
types::Type::Token(t) => {
@@ -350,7 +352,7 @@
Some(token_punct_visit(t, kind, name))
}
}
- types::Type::TokenGroup(t) => Some(token_group_visit(&t[..], kind, name)),
+ types::Type::Group(t) => Some(token_group_visit(&t[..], kind, name)),
types::Type::Item(t) => {
fn requires_full(features: &types::Features) -> bool {
features.contains("full") && features.len() == 1
diff --git a/codegen/src/parse.rs b/codegen/src/parse.rs
index e7eef19..25b8ac1 100644
--- a/codegen/src/parse.rs
+++ b/codegen/src/parse.rs
@@ -162,7 +162,7 @@
_ => panic!(),
};
- types::Type::Punctuated(Box::new(nested), punct)
+ types::Type::Punctuated(types::Punctuated::new(nested, punct))
}
"Vec" => {
let nested = introspect_type(first_arg(&last.arguments), items, tokens);
@@ -173,7 +173,7 @@
types::Type::Box(Box::new(nested))
}
"Brace" | "Bracket" | "Paren" | "Group" => {
- types::Type::TokenGroup(last.ident.to_string())
+ types::Type::Group(last.ident.to_string())
}
"TokenStream" | "Literal" => types::Type::Ext(last.ident.to_string()),
"String" | "u32" | "usize" | "bool" => types::Type::Std(last.ident.to_string()),
diff --git a/codegen/src/types.rs b/codegen/src/types.rs
index 3770f41..679b72e 100644
--- a/codegen/src/types.rs
+++ b/codegen/src/types.rs
@@ -1,7 +1,7 @@
use std::ops;
#[derive(Debug, Serialize)]
-#[serde(rename_all = "snake_case")]
+#[serde(tag = "node", rename_all = "lowercase")]
pub enum TypeDef {
Struct(Struct),
Enum(Enum),
@@ -31,11 +31,12 @@
#[derive(Debug, Serialize)]
pub struct Field {
ident: String,
+ #[serde(rename = "type")]
ty: Type,
}
#[derive(Debug, Serialize)]
-#[serde(rename_all = "snake_case")]
+#[serde(rename_all = "lowercase")]
pub enum Type {
/// Type defined by `syn`
Item(String),
@@ -50,10 +51,11 @@
Token(Token),
/// Token group
- TokenGroup(String),
+ Group(String),
/// Punctuated list
- Punctuated(Box<Type>, Token),
+ Punctuated(Punctuated),
+
Option(Box<Type>),
Box(Box<Type>),
Vec(Box<Type>),
@@ -63,9 +65,16 @@
#[derive(Debug, Clone, Serialize)]
pub struct Token {
repr: String,
+ #[serde(rename = "type")]
ty: String,
}
+#[derive(Debug, Serialize)]
+pub struct Punctuated {
+ element: Box<Type>,
+ punct: Token,
+}
+
#[derive(Debug, Default, Clone, Serialize)]
pub struct Features {
any: Vec<String>,
@@ -172,6 +181,16 @@
}
}
+impl Punctuated {
+ pub fn new(element: Type, punct: Token) -> Self {
+ Punctuated { element: Box::new(element), punct }
+ }
+
+ pub fn element(&self) -> &Type {
+ &self.element
+ }
+}
+
impl Features {
pub fn new(any: Vec<String>) -> Features {
Features { any }
diff --git a/syn.json b/syn.json
index 9db26ba..597cc1f 100644
--- a/syn.json
+++ b/syn.json
@@ -2,9690 +2,9493 @@
"version": "0.15.26",
"types": [
{
- "struct": {
- "ident": "Abi",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "extern_token",
- "ty": {
- "token": {
- "repr": "extern",
- "ty": "Extern"
- }
- }
- },
- {
- "ident": "name",
- "ty": {
- "option": {
- "item": "LitStr"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "AngleBracketedGenericArguments",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "colon2_token",
- "ty": {
- "option": {
- "token": {
- "repr": "::",
- "ty": "Colon2"
- }
- }
- }
- },
- {
- "ident": "lt_token",
- "ty": {
- "token": {
- "repr": "<",
- "ty": "Lt"
- }
- }
- },
- {
- "ident": "args",
- "ty": {
- "punctuated": [
- {
- "item": "GenericArgument"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- },
- {
- "ident": "gt_token",
- "ty": {
- "token": {
- "repr": ">",
- "ty": "Gt"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ArgCaptured",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "pat",
- "ty": {
- "item": "Pat"
- }
- },
- {
- "ident": "colon_token",
- "ty": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- },
- {
- "ident": "ty",
- "ty": {
- "item": "Type"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ArgSelf",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "mutability",
- "ty": {
- "option": {
- "token": {
- "repr": "mut",
- "ty": "Mut"
- }
- }
- }
- },
- {
- "ident": "self_token",
- "ty": {
- "token": {
- "repr": "self",
- "ty": "SelfValue"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ArgSelfRef",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "and_token",
- "ty": {
- "token": {
- "repr": "&",
- "ty": "And"
- }
- }
- },
- {
- "ident": "lifetime",
- "ty": {
- "option": {
- "item": "Lifetime"
- }
- }
- },
- {
- "ident": "mutability",
- "ty": {
- "option": {
- "token": {
- "repr": "mut",
- "ty": "Mut"
- }
- }
- }
- },
- {
- "ident": "self_token",
- "ty": {
- "token": {
- "repr": "self",
- "ty": "SelfValue"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "Arm",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "leading_vert",
- "ty": {
- "option": {
- "token": {
- "repr": "|",
- "ty": "Or"
- }
- }
- }
- },
- {
- "ident": "pats",
- "ty": {
- "punctuated": [
- {
- "item": "Pat"
- },
- {
- "repr": "|",
- "ty": "Or"
- }
- ]
- }
- },
- {
- "ident": "guard",
- "ty": {
- "option": {
- "tuple": [
- {
- "token": {
- "repr": "if",
- "ty": "If"
- }
- },
- {
- "box": {
- "item": "Expr"
- }
- }
- ]
- }
- }
- },
- {
- "ident": "fat_arrow_token",
- "ty": {
- "token": {
- "repr": "=>",
- "ty": "FatArrow"
- }
- }
- },
- {
- "ident": "body",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "comma",
- "ty": {
- "option": {
- "token": {
- "repr": ",",
- "ty": "Comma"
- }
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "enum": {
- "ident": "AttrStyle",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "Outer",
- "fields": []
- },
- {
- "ident": "Inner",
- "fields": [
- {
- "token": {
- "repr": "!",
- "ty": "Bang"
- }
- }
- ]
- }
+ "node": "struct",
+ "ident": "Abi",
+ "features": {
+ "any": [
+ "full",
+ "derive"
]
- }
- },
- {
- "struct": {
- "ident": "Attribute",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "pound_token",
- "ty": {
- "token": {
- "repr": "#",
- "ty": "Pound"
- }
- }
- },
- {
- "ident": "style",
- "ty": {
- "item": "AttrStyle"
- }
- },
- {
- "ident": "bracket_token",
- "ty": {
- "token_group": "Bracket"
- }
- },
- {
- "ident": "path",
- "ty": {
- "item": "Path"
- }
- },
- {
- "ident": "tts",
- "ty": {
- "ext": "TokenStream"
+ },
+ "fields": [
+ {
+ "ident": "extern_token",
+ "type": {
+ "token": {
+ "repr": "extern",
+ "type": "Extern"
}
}
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "BareFnArg",
- "features": {
- "any": [
- "full",
- "derive"
- ]
},
- "fields": [
- {
- "ident": "name",
- "ty": {
- "option": {
- "tuple": [
- {
- "item": "BareFnArgName"
- },
- {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- ]
- }
- }
- },
- {
- "ident": "ty",
- "ty": {
- "item": "Type"
+ {
+ "ident": "name",
+ "type": {
+ "option": {
+ "item": "LitStr"
}
}
- ],
- "all_fields_pub": true
- }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "enum": {
- "ident": "BareFnArgName",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "Named",
- "fields": [
- {
- "item": "Ident"
- }
- ]
- },
- {
- "ident": "Wild",
- "fields": [
- {
- "token": {
- "repr": "_",
- "ty": "Underscore"
- }
- }
- ]
- }
+ "node": "struct",
+ "ident": "AngleBracketedGenericArguments",
+ "features": {
+ "any": [
+ "full",
+ "derive"
]
- }
+ },
+ "fields": [
+ {
+ "ident": "colon2_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "::",
+ "type": "Colon2"
+ }
+ }
+ }
+ },
+ {
+ "ident": "lt_token",
+ "type": {
+ "token": {
+ "repr": "<",
+ "type": "Lt"
+ }
+ }
+ },
+ {
+ "ident": "args",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "GenericArgument"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ },
+ {
+ "ident": "gt_token",
+ "type": {
+ "token": {
+ "repr": ">",
+ "type": "Gt"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "enum": {
- "ident": "BinOp",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "Add",
- "fields": [
- {
- "token": {
- "repr": "+",
- "ty": "Add"
- }
- }
- ]
- },
- {
- "ident": "Sub",
- "fields": [
- {
- "token": {
- "repr": "-",
- "ty": "Sub"
- }
- }
- ]
- },
- {
- "ident": "Mul",
- "fields": [
- {
- "token": {
- "repr": "*",
- "ty": "Star"
- }
- }
- ]
- },
- {
- "ident": "Div",
- "fields": [
- {
- "token": {
- "repr": "/",
- "ty": "Div"
- }
- }
- ]
- },
- {
- "ident": "Rem",
- "fields": [
- {
- "token": {
- "repr": "%",
- "ty": "Rem"
- }
- }
- ]
- },
- {
- "ident": "And",
- "fields": [
- {
- "token": {
- "repr": "&&",
- "ty": "AndAnd"
- }
- }
- ]
- },
- {
- "ident": "Or",
- "fields": [
- {
- "token": {
- "repr": "||",
- "ty": "OrOr"
- }
- }
- ]
- },
- {
- "ident": "BitXor",
- "fields": [
- {
- "token": {
- "repr": "^",
- "ty": "Caret"
- }
- }
- ]
- },
- {
- "ident": "BitAnd",
- "fields": [
- {
- "token": {
- "repr": "&",
- "ty": "And"
- }
- }
- ]
- },
- {
- "ident": "BitOr",
- "fields": [
- {
- "token": {
- "repr": "|",
- "ty": "Or"
- }
- }
- ]
- },
- {
- "ident": "Shl",
- "fields": [
- {
- "token": {
- "repr": "<<",
- "ty": "Shl"
- }
- }
- ]
- },
- {
- "ident": "Shr",
- "fields": [
- {
- "token": {
- "repr": ">>",
- "ty": "Shr"
- }
- }
- ]
- },
- {
- "ident": "Eq",
- "fields": [
- {
- "token": {
- "repr": "==",
- "ty": "EqEq"
- }
- }
- ]
- },
- {
- "ident": "Lt",
- "fields": [
- {
- "token": {
- "repr": "<",
- "ty": "Lt"
- }
- }
- ]
- },
- {
- "ident": "Le",
- "fields": [
- {
- "token": {
- "repr": "<=",
- "ty": "Le"
- }
- }
- ]
- },
- {
- "ident": "Ne",
- "fields": [
- {
- "token": {
- "repr": "!=",
- "ty": "Ne"
- }
- }
- ]
- },
- {
- "ident": "Ge",
- "fields": [
- {
- "token": {
- "repr": ">=",
- "ty": "Ge"
- }
- }
- ]
- },
- {
- "ident": "Gt",
- "fields": [
- {
- "token": {
- "repr": ">",
- "ty": "Gt"
- }
- }
- ]
- },
- {
- "ident": "AddEq",
- "fields": [
- {
- "token": {
- "repr": "+=",
- "ty": "AddEq"
- }
- }
- ]
- },
- {
- "ident": "SubEq",
- "fields": [
- {
- "token": {
- "repr": "-=",
- "ty": "SubEq"
- }
- }
- ]
- },
- {
- "ident": "MulEq",
- "fields": [
- {
- "token": {
- "repr": "*=",
- "ty": "MulEq"
- }
- }
- ]
- },
- {
- "ident": "DivEq",
- "fields": [
- {
- "token": {
- "repr": "/=",
- "ty": "DivEq"
- }
- }
- ]
- },
- {
- "ident": "RemEq",
- "fields": [
- {
- "token": {
- "repr": "%=",
- "ty": "RemEq"
- }
- }
- ]
- },
- {
- "ident": "BitXorEq",
- "fields": [
- {
- "token": {
- "repr": "^=",
- "ty": "CaretEq"
- }
- }
- ]
- },
- {
- "ident": "BitAndEq",
- "fields": [
- {
- "token": {
- "repr": "&=",
- "ty": "AndEq"
- }
- }
- ]
- },
- {
- "ident": "BitOrEq",
- "fields": [
- {
- "token": {
- "repr": "|=",
- "ty": "OrEq"
- }
- }
- ]
- },
- {
- "ident": "ShlEq",
- "fields": [
- {
- "token": {
- "repr": "<<=",
- "ty": "ShlEq"
- }
- }
- ]
- },
- {
- "ident": "ShrEq",
- "fields": [
- {
- "token": {
- "repr": ">>=",
- "ty": "ShrEq"
- }
- }
- ]
- }
+ "node": "struct",
+ "ident": "ArgCaptured",
+ "features": {
+ "any": [
+ "full"
]
- }
- },
- {
- "struct": {
- "ident": "Binding",
- "features": {
- "any": [
- "full",
- "derive"
- ]
+ },
+ "fields": [
+ {
+ "ident": "pat",
+ "type": {
+ "item": "Pat"
+ }
},
- "fields": [
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "eq_token",
- "ty": {
- "token": {
- "repr": "=",
- "ty": "Eq"
- }
- }
- },
- {
- "ident": "ty",
- "ty": {
- "item": "Type"
+ {
+ "ident": "colon_token",
+ "type": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
}
}
- ],
- "all_fields_pub": true
- }
+ },
+ {
+ "ident": "ty",
+ "type": {
+ "item": "Type"
+ }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "struct": {
- "ident": "Block",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "brace_token",
- "ty": {
- "token_group": "Brace"
- }
- },
- {
- "ident": "stmts",
- "ty": {
- "vec": {
- "item": "Stmt"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "BoundLifetimes",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "for_token",
- "ty": {
- "token": {
- "repr": "for",
- "ty": "For"
- }
- }
- },
- {
- "ident": "lt_token",
- "ty": {
- "token": {
- "repr": "<",
- "ty": "Lt"
- }
- }
- },
- {
- "ident": "lifetimes",
- "ty": {
- "punctuated": [
- {
- "item": "LifetimeDef"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- },
- {
- "ident": "gt_token",
- "ty": {
- "token": {
- "repr": ">",
- "ty": "Gt"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ConstParam",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "const_token",
- "ty": {
- "token": {
- "repr": "const",
- "ty": "Const"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "colon_token",
- "ty": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- },
- {
- "ident": "ty",
- "ty": {
- "item": "Type"
- }
- },
- {
- "ident": "eq_token",
- "ty": {
- "option": {
- "token": {
- "repr": "=",
- "ty": "Eq"
- }
- }
- }
- },
- {
- "ident": "default",
- "ty": {
- "option": {
- "item": "Expr"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "Constraint",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "colon_token",
- "ty": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- },
- {
- "ident": "bounds",
- "ty": {
- "punctuated": [
- {
- "item": "TypeParamBound"
- },
- {
- "repr": "+",
- "ty": "Add"
- }
- ]
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "enum": {
- "ident": "Data",
- "features": {
- "any": [
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "Struct",
- "fields": [
- {
- "item": "DataStruct"
- }
- ]
- },
- {
- "ident": "Enum",
- "fields": [
- {
- "item": "DataEnum"
- }
- ]
- },
- {
- "ident": "Union",
- "fields": [
- {
- "item": "DataUnion"
- }
- ]
- }
+ "node": "struct",
+ "ident": "ArgSelf",
+ "features": {
+ "any": [
+ "full"
]
- }
- },
- {
- "struct": {
- "ident": "DataEnum",
- "features": {
- "any": [
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "enum_token",
- "ty": {
+ },
+ "fields": [
+ {
+ "ident": "mutability",
+ "type": {
+ "option": {
"token": {
- "repr": "enum",
- "ty": "Enum"
+ "repr": "mut",
+ "type": "Mut"
}
}
- },
- {
- "ident": "brace_token",
- "ty": {
- "token_group": "Brace"
- }
- },
- {
- "ident": "variants",
- "ty": {
- "punctuated": [
- {
- "item": "Variant"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
+ }
+ },
+ {
+ "ident": "self_token",
+ "type": {
+ "token": {
+ "repr": "self",
+ "type": "SelfValue"
}
}
- ],
- "all_fields_pub": true
- }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "struct": {
- "ident": "DataStruct",
- "features": {
- "any": [
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "struct_token",
- "ty": {
- "token": {
- "repr": "struct",
- "ty": "Struct"
- }
- }
- },
- {
- "ident": "fields",
- "ty": {
- "item": "Fields"
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "option": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "DataUnion",
- "features": {
- "any": [
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "union_token",
- "ty": {
- "token": {
- "repr": "union",
- "ty": "Union"
- }
- }
- },
- {
- "ident": "fields",
- "ty": {
- "item": "FieldsNamed"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "DeriveInput",
- "features": {
- "any": [
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "generics",
- "ty": {
- "item": "Generics"
- }
- },
- {
- "ident": "data",
- "ty": {
- "item": "Data"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "enum": {
- "ident": "Expr",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "Box",
- "fields": [
- {
- "item": "ExprBox"
- }
- ]
- },
- {
- "ident": "InPlace",
- "fields": [
- {
- "item": "ExprInPlace"
- }
- ]
- },
- {
- "ident": "Array",
- "fields": [
- {
- "item": "ExprArray"
- }
- ]
- },
- {
- "ident": "Call",
- "fields": [
- {
- "item": "ExprCall"
- }
- ]
- },
- {
- "ident": "MethodCall",
- "fields": [
- {
- "item": "ExprMethodCall"
- }
- ]
- },
- {
- "ident": "Tuple",
- "fields": [
- {
- "item": "ExprTuple"
- }
- ]
- },
- {
- "ident": "Binary",
- "fields": [
- {
- "item": "ExprBinary"
- }
- ]
- },
- {
- "ident": "Unary",
- "fields": [
- {
- "item": "ExprUnary"
- }
- ]
- },
- {
- "ident": "Lit",
- "fields": [
- {
- "item": "ExprLit"
- }
- ]
- },
- {
- "ident": "Cast",
- "fields": [
- {
- "item": "ExprCast"
- }
- ]
- },
- {
- "ident": "Type",
- "fields": [
- {
- "item": "ExprType"
- }
- ]
- },
- {
- "ident": "Let",
- "fields": [
- {
- "item": "ExprLet"
- }
- ]
- },
- {
- "ident": "If",
- "fields": [
- {
- "item": "ExprIf"
- }
- ]
- },
- {
- "ident": "While",
- "fields": [
- {
- "item": "ExprWhile"
- }
- ]
- },
- {
- "ident": "ForLoop",
- "fields": [
- {
- "item": "ExprForLoop"
- }
- ]
- },
- {
- "ident": "Loop",
- "fields": [
- {
- "item": "ExprLoop"
- }
- ]
- },
- {
- "ident": "Match",
- "fields": [
- {
- "item": "ExprMatch"
- }
- ]
- },
- {
- "ident": "Closure",
- "fields": [
- {
- "item": "ExprClosure"
- }
- ]
- },
- {
- "ident": "Unsafe",
- "fields": [
- {
- "item": "ExprUnsafe"
- }
- ]
- },
- {
- "ident": "Block",
- "fields": [
- {
- "item": "ExprBlock"
- }
- ]
- },
- {
- "ident": "Assign",
- "fields": [
- {
- "item": "ExprAssign"
- }
- ]
- },
- {
- "ident": "AssignOp",
- "fields": [
- {
- "item": "ExprAssignOp"
- }
- ]
- },
- {
- "ident": "Field",
- "fields": [
- {
- "item": "ExprField"
- }
- ]
- },
- {
- "ident": "Index",
- "fields": [
- {
- "item": "ExprIndex"
- }
- ]
- },
- {
- "ident": "Range",
- "fields": [
- {
- "item": "ExprRange"
- }
- ]
- },
- {
- "ident": "Path",
- "fields": [
- {
- "item": "ExprPath"
- }
- ]
- },
- {
- "ident": "Reference",
- "fields": [
- {
- "item": "ExprReference"
- }
- ]
- },
- {
- "ident": "Break",
- "fields": [
- {
- "item": "ExprBreak"
- }
- ]
- },
- {
- "ident": "Continue",
- "fields": [
- {
- "item": "ExprContinue"
- }
- ]
- },
- {
- "ident": "Return",
- "fields": [
- {
- "item": "ExprReturn"
- }
- ]
- },
- {
- "ident": "Macro",
- "fields": [
- {
- "item": "ExprMacro"
- }
- ]
- },
- {
- "ident": "Struct",
- "fields": [
- {
- "item": "ExprStruct"
- }
- ]
- },
- {
- "ident": "Repeat",
- "fields": [
- {
- "item": "ExprRepeat"
- }
- ]
- },
- {
- "ident": "Paren",
- "fields": [
- {
- "item": "ExprParen"
- }
- ]
- },
- {
- "ident": "Group",
- "fields": [
- {
- "item": "ExprGroup"
- }
- ]
- },
- {
- "ident": "Try",
- "fields": [
- {
- "item": "ExprTry"
- }
- ]
- },
- {
- "ident": "Async",
- "fields": [
- {
- "item": "ExprAsync"
- }
- ]
- },
- {
- "ident": "TryBlock",
- "fields": [
- {
- "item": "ExprTryBlock"
- }
- ]
- },
- {
- "ident": "Yield",
- "fields": [
- {
- "item": "ExprYield"
- }
- ]
- },
- {
- "ident": "Verbatim",
- "fields": [
- {
- "item": "ExprVerbatim"
- }
- ]
- }
+ "node": "struct",
+ "ident": "ArgSelfRef",
+ "features": {
+ "any": [
+ "full"
]
- }
- },
- {
- "struct": {
- "ident": "ExprArray",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "bracket_token",
- "ty": {
- "token_group": "Bracket"
- }
- },
- {
- "ident": "elems",
- "ty": {
- "punctuated": [
- {
- "item": "Expr"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
+ },
+ "fields": [
+ {
+ "ident": "and_token",
+ "type": {
+ "token": {
+ "repr": "&",
+ "type": "And"
}
}
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprAssign",
- "features": {
- "any": [
- "full"
- ]
},
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
+ {
+ "ident": "lifetime",
+ "type": {
+ "option": {
+ "item": "Lifetime"
}
- },
- {
- "ident": "left",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "eq_token",
- "ty": {
+ }
+ },
+ {
+ "ident": "mutability",
+ "type": {
+ "option": {
"token": {
- "repr": "=",
- "ty": "Eq"
- }
- }
- },
- {
- "ident": "right",
- "ty": {
- "box": {
- "item": "Expr"
+ "repr": "mut",
+ "type": "Mut"
}
}
}
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprAssignOp",
- "features": {
- "any": [
- "full"
- ]
},
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "left",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "op",
- "ty": {
- "item": "BinOp"
- }
- },
- {
- "ident": "right",
- "ty": {
- "box": {
- "item": "Expr"
- }
+ {
+ "ident": "self_token",
+ "type": {
+ "token": {
+ "repr": "self",
+ "type": "SelfValue"
}
}
- ],
- "all_fields_pub": true
- }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "struct": {
- "ident": "ExprAsync",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "async_token",
- "ty": {
- "token": {
- "repr": "async",
- "ty": "Async"
- }
- }
- },
- {
- "ident": "capture",
- "ty": {
- "option": {
- "token": {
- "repr": "move",
- "ty": "Move"
- }
- }
- }
- },
- {
- "ident": "block",
- "ty": {
- "item": "Block"
+ "node": "struct",
+ "ident": "Arm",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
}
}
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprBinary",
- "features": {
- "any": [
- "full",
- "derive"
- ]
},
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "left",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "op",
- "ty": {
- "item": "BinOp"
- }
- },
- {
- "ident": "right",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprBlock",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "label",
- "ty": {
- "option": {
- "item": "Label"
- }
- }
- },
- {
- "ident": "block",
- "ty": {
- "item": "Block"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprBox",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "box_token",
- "ty": {
- "token": {
- "repr": "box",
- "ty": "Box"
- }
- }
- },
- {
- "ident": "expr",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprBreak",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "break_token",
- "ty": {
- "token": {
- "repr": "break",
- "ty": "Break"
- }
- }
- },
- {
- "ident": "label",
- "ty": {
- "option": {
- "item": "Lifetime"
- }
- }
- },
- {
- "ident": "expr",
- "ty": {
- "option": {
- "box": {
- "item": "Expr"
- }
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprCall",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "func",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "paren_token",
- "ty": {
- "token_group": "Paren"
- }
- },
- {
- "ident": "args",
- "ty": {
- "punctuated": [
- {
- "item": "Expr"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprCast",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "expr",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "as_token",
- "ty": {
- "token": {
- "repr": "as",
- "ty": "As"
- }
- }
- },
- {
- "ident": "ty",
- "ty": {
- "box": {
- "item": "Type"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprClosure",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "asyncness",
- "ty": {
- "option": {
- "token": {
- "repr": "async",
- "ty": "Async"
- }
- }
- }
- },
- {
- "ident": "movability",
- "ty": {
- "option": {
- "token": {
- "repr": "static",
- "ty": "Static"
- }
- }
- }
- },
- {
- "ident": "capture",
- "ty": {
- "option": {
- "token": {
- "repr": "move",
- "ty": "Move"
- }
- }
- }
- },
- {
- "ident": "or1_token",
- "ty": {
+ {
+ "ident": "leading_vert",
+ "type": {
+ "option": {
"token": {
"repr": "|",
- "ty": "Or"
+ "type": "Or"
}
}
- },
- {
- "ident": "inputs",
- "ty": {
- "punctuated": [
- {
- "item": "FnArg"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- },
- {
- "ident": "or2_token",
- "ty": {
- "token": {
+ }
+ },
+ {
+ "ident": "pats",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Pat"
+ },
+ "punct": {
"repr": "|",
- "ty": "Or"
- }
- }
- },
- {
- "ident": "output",
- "ty": {
- "item": "ReturnType"
- }
- },
- {
- "ident": "body",
- "ty": {
- "box": {
- "item": "Expr"
+ "type": "Or"
}
}
}
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprContinue",
- "features": {
- "any": [
- "full"
- ]
},
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "continue_token",
- "ty": {
- "token": {
- "repr": "continue",
- "ty": "Continue"
- }
- }
- },
- {
- "ident": "label",
- "ty": {
- "option": {
- "item": "Lifetime"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprField",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "base",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "dot_token",
- "ty": {
- "token": {
- "repr": ".",
- "ty": "Dot"
- }
- }
- },
- {
- "ident": "member",
- "ty": {
- "item": "Member"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprForLoop",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "label",
- "ty": {
- "option": {
- "item": "Label"
- }
- }
- },
- {
- "ident": "for_token",
- "ty": {
- "token": {
- "repr": "for",
- "ty": "For"
- }
- }
- },
- {
- "ident": "pat",
- "ty": {
- "box": {
- "item": "Pat"
- }
- }
- },
- {
- "ident": "in_token",
- "ty": {
- "token": {
- "repr": "in",
- "ty": "In"
- }
- }
- },
- {
- "ident": "expr",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "body",
- "ty": {
- "item": "Block"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprGroup",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "group_token",
- "ty": {
- "token_group": "Group"
- }
- },
- {
- "ident": "expr",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprIf",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "if_token",
- "ty": {
- "token": {
- "repr": "if",
- "ty": "If"
- }
- }
- },
- {
- "ident": "cond",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "then_branch",
- "ty": {
- "item": "Block"
- }
- },
- {
- "ident": "else_branch",
- "ty": {
- "option": {
- "tuple": [
- {
- "token": {
- "repr": "else",
- "ty": "Else"
- }
- },
- {
- "box": {
- "item": "Expr"
- }
+ {
+ "ident": "guard",
+ "type": {
+ "option": {
+ "tuple": [
+ {
+ "token": {
+ "repr": "if",
+ "type": "If"
}
- ]
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprInPlace",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "place",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "arrow_token",
- "ty": {
- "token": {
- "repr": "<-",
- "ty": "LArrow"
- }
- }
- },
- {
- "ident": "value",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprIndex",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "expr",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "bracket_token",
- "ty": {
- "token_group": "Bracket"
- }
- },
- {
- "ident": "index",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprLet",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "let_token",
- "ty": {
- "token": {
- "repr": "let",
- "ty": "Let"
- }
- }
- },
- {
- "ident": "pats",
- "ty": {
- "punctuated": [
- {
- "item": "Pat"
},
{
- "repr": "|",
- "ty": "Or"
- }
- ]
- }
- },
- {
- "ident": "eq_token",
- "ty": {
- "token": {
- "repr": "=",
- "ty": "Eq"
- }
- }
- },
- {
- "ident": "expr",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprLit",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "lit",
- "ty": {
- "item": "Lit"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprLoop",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "label",
- "ty": {
- "option": {
- "item": "Label"
- }
- }
- },
- {
- "ident": "loop_token",
- "ty": {
- "token": {
- "repr": "loop",
- "ty": "Loop"
- }
- }
- },
- {
- "ident": "body",
- "ty": {
- "item": "Block"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprMacro",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "mac",
- "ty": {
- "item": "Macro"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprMatch",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "match_token",
- "ty": {
- "token": {
- "repr": "match",
- "ty": "Match"
- }
- }
- },
- {
- "ident": "expr",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "brace_token",
- "ty": {
- "token_group": "Brace"
- }
- },
- {
- "ident": "arms",
- "ty": {
- "vec": {
- "item": "Arm"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprMethodCall",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "receiver",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "dot_token",
- "ty": {
- "token": {
- "repr": ".",
- "ty": "Dot"
- }
- }
- },
- {
- "ident": "method",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "turbofish",
- "ty": {
- "option": {
- "item": "MethodTurbofish"
- }
- }
- },
- {
- "ident": "paren_token",
- "ty": {
- "token_group": "Paren"
- }
- },
- {
- "ident": "args",
- "ty": {
- "punctuated": [
- {
- "item": "Expr"
- },
- {
- "repr": ",",
- "ty": "Comma"
+ "box": {
+ "item": "Expr"
+ }
}
]
}
}
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprParen",
- "features": {
- "any": [
- "full",
- "derive"
- ]
},
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "paren_token",
- "ty": {
- "token_group": "Paren"
- }
- },
- {
- "ident": "expr",
- "ty": {
- "box": {
- "item": "Expr"
- }
+ {
+ "ident": "fat_arrow_token",
+ "type": {
+ "token": {
+ "repr": "=>",
+ "type": "FatArrow"
}
}
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprPath",
- "features": {
- "any": [
- "full",
- "derive"
- ]
},
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "qself",
- "ty": {
- "option": {
- "item": "QSelf"
- }
- }
- },
- {
- "ident": "path",
- "ty": {
- "item": "Path"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprRange",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "from",
- "ty": {
- "option": {
- "box": {
- "item": "Expr"
- }
- }
- }
- },
- {
- "ident": "limits",
- "ty": {
- "item": "RangeLimits"
- }
- },
- {
- "ident": "to",
- "ty": {
- "option": {
- "box": {
- "item": "Expr"
- }
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprReference",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "and_token",
- "ty": {
- "token": {
- "repr": "&",
- "ty": "And"
- }
- }
- },
- {
- "ident": "mutability",
- "ty": {
- "option": {
- "token": {
- "repr": "mut",
- "ty": "Mut"
- }
- }
- }
- },
- {
- "ident": "expr",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprRepeat",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "bracket_token",
- "ty": {
- "token_group": "Bracket"
- }
- },
- {
- "ident": "expr",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- },
- {
- "ident": "len",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprReturn",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "return_token",
- "ty": {
- "token": {
- "repr": "return",
- "ty": "Return"
- }
- }
- },
- {
- "ident": "expr",
- "ty": {
- "option": {
- "box": {
- "item": "Expr"
- }
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprStruct",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "path",
- "ty": {
- "item": "Path"
- }
- },
- {
- "ident": "brace_token",
- "ty": {
- "token_group": "Brace"
- }
- },
- {
- "ident": "fields",
- "ty": {
- "punctuated": [
- {
- "item": "FieldValue"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- },
- {
- "ident": "dot2_token",
- "ty": {
- "option": {
- "token": {
- "repr": "..",
- "ty": "Dot2"
- }
- }
- }
- },
- {
- "ident": "rest",
- "ty": {
- "option": {
- "box": {
- "item": "Expr"
- }
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprTry",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "expr",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "question_token",
- "ty": {
- "token": {
- "repr": "?",
- "ty": "Question"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprTryBlock",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "try_token",
- "ty": {
- "token": {
- "repr": "try",
- "ty": "Try"
- }
- }
- },
- {
- "ident": "block",
- "ty": {
- "item": "Block"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprTuple",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "paren_token",
- "ty": {
- "token_group": "Paren"
- }
- },
- {
- "ident": "elems",
- "ty": {
- "punctuated": [
- {
- "item": "Expr"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprType",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "expr",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "colon_token",
- "ty": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- },
- {
- "ident": "ty",
- "ty": {
- "box": {
- "item": "Type"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprUnary",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "op",
- "ty": {
- "item": "UnOp"
- }
- },
- {
- "ident": "expr",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprUnsafe",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "unsafe_token",
- "ty": {
- "token": {
- "repr": "unsafe",
- "ty": "Unsafe"
- }
- }
- },
- {
- "ident": "block",
- "ty": {
- "item": "Block"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprVerbatim",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "tts",
- "ty": {
- "ext": "TokenStream"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprWhile",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "label",
- "ty": {
- "option": {
- "item": "Label"
- }
- }
- },
- {
- "ident": "while_token",
- "ty": {
- "token": {
- "repr": "while",
- "ty": "While"
- }
- }
- },
- {
- "ident": "cond",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "body",
- "ty": {
- "item": "Block"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ExprYield",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "yield_token",
- "ty": {
- "token": {
- "repr": "yield",
- "ty": "Yield"
- }
- }
- },
- {
- "ident": "expr",
- "ty": {
- "option": {
- "box": {
- "item": "Expr"
- }
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "Field",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "ident",
- "ty": {
- "option": {
- "item": "Ident"
- }
- }
- },
- {
- "ident": "colon_token",
- "ty": {
- "option": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- }
- },
- {
- "ident": "ty",
- "ty": {
- "item": "Type"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "FieldPat",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "member",
- "ty": {
- "item": "Member"
- }
- },
- {
- "ident": "colon_token",
- "ty": {
- "option": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- }
- },
- {
- "ident": "pat",
- "ty": {
- "box": {
- "item": "Pat"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "FieldValue",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "member",
- "ty": {
- "item": "Member"
- }
- },
- {
- "ident": "colon_token",
- "ty": {
- "option": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- }
- },
- {
- "ident": "expr",
- "ty": {
+ {
+ "ident": "body",
+ "type": {
+ "box": {
"item": "Expr"
}
}
- ],
- "all_fields_pub": true
- }
+ },
+ {
+ "ident": "comma",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "enum": {
- "ident": "Fields",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "Named",
- "fields": [
- {
- "item": "FieldsNamed"
- }
- ]
- },
- {
- "ident": "Unnamed",
- "fields": [
- {
- "item": "FieldsUnnamed"
- }
- ]
- },
- {
- "ident": "Unit",
- "fields": []
- }
+ "node": "enum",
+ "ident": "AttrStyle",
+ "features": {
+ "any": [
+ "full",
+ "derive"
]
- }
- },
- {
- "struct": {
- "ident": "FieldsNamed",
- "features": {
- "any": [
- "full",
- "derive"
- ]
+ },
+ "variants": [
+ {
+ "ident": "Outer",
+ "fields": []
},
- "fields": [
- {
- "ident": "brace_token",
- "ty": {
- "token_group": "Brace"
- }
- },
- {
- "ident": "named",
- "ty": {
- "punctuated": [
- {
- "item": "Field"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "FieldsUnnamed",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "paren_token",
- "ty": {
- "token_group": "Paren"
- }
- },
- {
- "ident": "unnamed",
- "ty": {
- "punctuated": [
- {
- "item": "Field"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "File",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "shebang",
- "ty": {
- "option": {
- "std": "String"
- }
- }
- },
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "items",
- "ty": {
- "vec": {
- "item": "Item"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "enum": {
- "ident": "FnArg",
- "features": {
- "any": [
- "full"
- ]
- },
- "variants": [
- {
- "ident": "SelfRef",
- "fields": [
- {
- "item": "ArgSelfRef"
- }
- ]
- },
- {
- "ident": "SelfValue",
- "fields": [
- {
- "item": "ArgSelf"
- }
- ]
- },
- {
- "ident": "Captured",
- "fields": [
- {
- "item": "ArgCaptured"
- }
- ]
- },
- {
- "ident": "Inferred",
- "fields": [
- {
- "item": "Pat"
- }
- ]
- },
- {
- "ident": "Ignored",
- "fields": [
- {
- "item": "Type"
- }
- ]
- }
- ]
- }
- },
- {
- "struct": {
- "ident": "FnDecl",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "fn_token",
- "ty": {
- "token": {
- "repr": "fn",
- "ty": "Fn"
- }
- }
- },
- {
- "ident": "generics",
- "ty": {
- "item": "Generics"
- }
- },
- {
- "ident": "paren_token",
- "ty": {
- "token_group": "Paren"
- }
- },
- {
- "ident": "inputs",
- "ty": {
- "punctuated": [
- {
- "item": "FnArg"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- },
- {
- "ident": "variadic",
- "ty": {
- "option": {
- "token": {
- "repr": "...",
- "ty": "Dot3"
- }
- }
- }
- },
- {
- "ident": "output",
- "ty": {
- "item": "ReturnType"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "enum": {
- "ident": "ForeignItem",
- "features": {
- "any": [
- "full"
- ]
- },
- "variants": [
- {
- "ident": "Fn",
- "fields": [
- {
- "item": "ForeignItemFn"
- }
- ]
- },
- {
- "ident": "Static",
- "fields": [
- {
- "item": "ForeignItemStatic"
- }
- ]
- },
- {
- "ident": "Type",
- "fields": [
- {
- "item": "ForeignItemType"
- }
- ]
- },
- {
- "ident": "Macro",
- "fields": [
- {
- "item": "ForeignItemMacro"
- }
- ]
- },
- {
- "ident": "Verbatim",
- "fields": [
- {
- "item": "ForeignItemVerbatim"
- }
- ]
- }
- ]
- }
- },
- {
- "struct": {
- "ident": "ForeignItemFn",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "decl",
- "ty": {
- "box": {
- "item": "FnDecl"
- }
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ForeignItemMacro",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "mac",
- "ty": {
- "item": "Macro"
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "option": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ForeignItemStatic",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "static_token",
- "ty": {
- "token": {
- "repr": "static",
- "ty": "Static"
- }
- }
- },
- {
- "ident": "mutability",
- "ty": {
- "option": {
- "token": {
- "repr": "mut",
- "ty": "Mut"
- }
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "colon_token",
- "ty": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- },
- {
- "ident": "ty",
- "ty": {
- "box": {
- "item": "Type"
- }
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ForeignItemType",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "type_token",
- "ty": {
- "token": {
- "repr": "type",
- "ty": "Type"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ForeignItemVerbatim",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "tts",
- "ty": {
- "ext": "TokenStream"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "enum": {
- "ident": "GenericArgument",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "Lifetime",
- "fields": [
- {
- "item": "Lifetime"
- }
- ]
- },
- {
- "ident": "Type",
- "fields": [
- {
- "item": "Type"
- }
- ]
- },
- {
- "ident": "Binding",
- "fields": [
- {
- "item": "Binding"
- }
- ]
- },
- {
- "ident": "Constraint",
- "fields": [
- {
- "item": "Constraint"
- }
- ]
- },
- {
- "ident": "Const",
- "fields": [
- {
- "item": "Expr"
- }
- ]
- }
- ]
- }
- },
- {
- "enum": {
- "ident": "GenericMethodArgument",
- "features": {
- "any": [
- "full"
- ]
- },
- "variants": [
- {
- "ident": "Type",
- "fields": [
- {
- "item": "Type"
- }
- ]
- },
- {
- "ident": "Const",
- "fields": [
- {
- "item": "Expr"
- }
- ]
- }
- ]
- }
- },
- {
- "enum": {
- "ident": "GenericParam",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "Type",
- "fields": [
- {
- "item": "TypeParam"
- }
- ]
- },
- {
- "ident": "Lifetime",
- "fields": [
- {
- "item": "LifetimeDef"
- }
- ]
- },
- {
- "ident": "Const",
- "fields": [
- {
- "item": "ConstParam"
- }
- ]
- }
- ]
- }
- },
- {
- "struct": {
- "ident": "Generics",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "lt_token",
- "ty": {
- "option": {
- "token": {
- "repr": "<",
- "ty": "Lt"
- }
- }
- }
- },
- {
- "ident": "params",
- "ty": {
- "punctuated": [
- {
- "item": "GenericParam"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- },
- {
- "ident": "gt_token",
- "ty": {
- "option": {
- "token": {
- "repr": ">",
- "ty": "Gt"
- }
- }
- }
- },
- {
- "ident": "where_clause",
- "ty": {
- "option": {
- "item": "WhereClause"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "Ident",
- "features": {
- "any": []
- },
- "fields": [],
- "all_fields_pub": true
- }
- },
- {
- "enum": {
- "ident": "ImplItem",
- "features": {
- "any": [
- "full"
- ]
- },
- "variants": [
- {
- "ident": "Const",
- "fields": [
- {
- "item": "ImplItemConst"
- }
- ]
- },
- {
- "ident": "Method",
- "fields": [
- {
- "item": "ImplItemMethod"
- }
- ]
- },
- {
- "ident": "Type",
- "fields": [
- {
- "item": "ImplItemType"
- }
- ]
- },
- {
- "ident": "Existential",
- "fields": [
- {
- "item": "ImplItemExistential"
- }
- ]
- },
- {
- "ident": "Macro",
- "fields": [
- {
- "item": "ImplItemMacro"
- }
- ]
- },
- {
- "ident": "Verbatim",
- "fields": [
- {
- "item": "ImplItemVerbatim"
- }
- ]
- }
- ]
- }
- },
- {
- "struct": {
- "ident": "ImplItemConst",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "defaultness",
- "ty": {
- "option": {
- "token": {
- "repr": "default",
- "ty": "Default"
- }
- }
- }
- },
- {
- "ident": "const_token",
- "ty": {
- "token": {
- "repr": "const",
- "ty": "Const"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "colon_token",
- "ty": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- },
- {
- "ident": "ty",
- "ty": {
- "item": "Type"
- }
- },
- {
- "ident": "eq_token",
- "ty": {
- "token": {
- "repr": "=",
- "ty": "Eq"
- }
- }
- },
- {
- "ident": "expr",
- "ty": {
- "item": "Expr"
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ImplItemExistential",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "existential_token",
- "ty": {
- "token": {
- "repr": "existential",
- "ty": "Existential"
- }
- }
- },
- {
- "ident": "type_token",
- "ty": {
- "token": {
- "repr": "type",
- "ty": "Type"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "generics",
- "ty": {
- "item": "Generics"
- }
- },
- {
- "ident": "colon_token",
- "ty": {
- "option": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- }
- },
- {
- "ident": "bounds",
- "ty": {
- "punctuated": [
- {
- "item": "TypeParamBound"
- },
- {
- "repr": "+",
- "ty": "Add"
- }
- ]
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ImplItemMacro",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "mac",
- "ty": {
- "item": "Macro"
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "option": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ImplItemMethod",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "defaultness",
- "ty": {
- "option": {
- "token": {
- "repr": "default",
- "ty": "Default"
- }
- }
- }
- },
- {
- "ident": "sig",
- "ty": {
- "item": "MethodSig"
- }
- },
- {
- "ident": "block",
- "ty": {
- "item": "Block"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ImplItemType",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "defaultness",
- "ty": {
- "option": {
- "token": {
- "repr": "default",
- "ty": "Default"
- }
- }
- }
- },
- {
- "ident": "type_token",
- "ty": {
- "token": {
- "repr": "type",
- "ty": "Type"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "generics",
- "ty": {
- "item": "Generics"
- }
- },
- {
- "ident": "eq_token",
- "ty": {
- "token": {
- "repr": "=",
- "ty": "Eq"
- }
- }
- },
- {
- "ident": "ty",
- "ty": {
- "item": "Type"
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ImplItemVerbatim",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "tts",
- "ty": {
- "ext": "TokenStream"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "Index",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "index",
- "ty": {
- "std": "u32"
- }
- },
- {
- "ident": "span",
- "ty": {
- "item": "Span"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "enum": {
- "ident": "Item",
- "features": {
- "any": [
- "full"
- ]
- },
- "variants": [
- {
- "ident": "ExternCrate",
- "fields": [
- {
- "item": "ItemExternCrate"
- }
- ]
- },
- {
- "ident": "Use",
- "fields": [
- {
- "item": "ItemUse"
- }
- ]
- },
- {
- "ident": "Static",
- "fields": [
- {
- "item": "ItemStatic"
- }
- ]
- },
- {
- "ident": "Const",
- "fields": [
- {
- "item": "ItemConst"
- }
- ]
- },
- {
- "ident": "Fn",
- "fields": [
- {
- "item": "ItemFn"
- }
- ]
- },
- {
- "ident": "Mod",
- "fields": [
- {
- "item": "ItemMod"
- }
- ]
- },
- {
- "ident": "ForeignMod",
- "fields": [
- {
- "item": "ItemForeignMod"
- }
- ]
- },
- {
- "ident": "Type",
- "fields": [
- {
- "item": "ItemType"
- }
- ]
- },
- {
- "ident": "Existential",
- "fields": [
- {
- "item": "ItemExistential"
- }
- ]
- },
- {
- "ident": "Struct",
- "fields": [
- {
- "item": "ItemStruct"
- }
- ]
- },
- {
- "ident": "Enum",
- "fields": [
- {
- "item": "ItemEnum"
- }
- ]
- },
- {
- "ident": "Union",
- "fields": [
- {
- "item": "ItemUnion"
- }
- ]
- },
- {
- "ident": "Trait",
- "fields": [
- {
- "item": "ItemTrait"
- }
- ]
- },
- {
- "ident": "TraitAlias",
- "fields": [
- {
- "item": "ItemTraitAlias"
- }
- ]
- },
- {
- "ident": "Impl",
- "fields": [
- {
- "item": "ItemImpl"
- }
- ]
- },
- {
- "ident": "Macro",
- "fields": [
- {
- "item": "ItemMacro"
- }
- ]
- },
- {
- "ident": "Macro2",
- "fields": [
- {
- "item": "ItemMacro2"
- }
- ]
- },
- {
- "ident": "Verbatim",
- "fields": [
- {
- "item": "ItemVerbatim"
- }
- ]
- }
- ]
- }
- },
- {
- "struct": {
- "ident": "ItemConst",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "const_token",
- "ty": {
- "token": {
- "repr": "const",
- "ty": "Const"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "colon_token",
- "ty": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- },
- {
- "ident": "ty",
- "ty": {
- "box": {
- "item": "Type"
- }
- }
- },
- {
- "ident": "eq_token",
- "ty": {
- "token": {
- "repr": "=",
- "ty": "Eq"
- }
- }
- },
- {
- "ident": "expr",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ItemEnum",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "enum_token",
- "ty": {
- "token": {
- "repr": "enum",
- "ty": "Enum"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "generics",
- "ty": {
- "item": "Generics"
- }
- },
- {
- "ident": "brace_token",
- "ty": {
- "token_group": "Brace"
- }
- },
- {
- "ident": "variants",
- "ty": {
- "punctuated": [
- {
- "item": "Variant"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ItemExistential",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "existential_token",
- "ty": {
- "token": {
- "repr": "existential",
- "ty": "Existential"
- }
- }
- },
- {
- "ident": "type_token",
- "ty": {
- "token": {
- "repr": "type",
- "ty": "Type"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "generics",
- "ty": {
- "item": "Generics"
- }
- },
- {
- "ident": "colon_token",
- "ty": {
- "option": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- }
- },
- {
- "ident": "bounds",
- "ty": {
- "punctuated": [
- {
- "item": "TypeParamBound"
- },
- {
- "repr": "+",
- "ty": "Add"
- }
- ]
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ItemExternCrate",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "extern_token",
- "ty": {
- "token": {
- "repr": "extern",
- "ty": "Extern"
- }
- }
- },
- {
- "ident": "crate_token",
- "ty": {
- "token": {
- "repr": "crate",
- "ty": "Crate"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "rename",
- "ty": {
- "option": {
- "tuple": [
- {
- "token": {
- "repr": "as",
- "ty": "As"
- }
- },
- {
- "item": "Ident"
- }
- ]
- }
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ItemFn",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "constness",
- "ty": {
- "option": {
- "token": {
- "repr": "const",
- "ty": "Const"
- }
- }
- }
- },
- {
- "ident": "unsafety",
- "ty": {
- "option": {
- "token": {
- "repr": "unsafe",
- "ty": "Unsafe"
- }
- }
- }
- },
- {
- "ident": "asyncness",
- "ty": {
- "option": {
- "token": {
- "repr": "async",
- "ty": "Async"
- }
- }
- }
- },
- {
- "ident": "abi",
- "ty": {
- "option": {
- "item": "Abi"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "decl",
- "ty": {
- "box": {
- "item": "FnDecl"
- }
- }
- },
- {
- "ident": "block",
- "ty": {
- "box": {
- "item": "Block"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ItemForeignMod",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "abi",
- "ty": {
- "item": "Abi"
- }
- },
- {
- "ident": "brace_token",
- "ty": {
- "token_group": "Brace"
- }
- },
- {
- "ident": "items",
- "ty": {
- "vec": {
- "item": "ForeignItem"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ItemImpl",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "defaultness",
- "ty": {
- "option": {
- "token": {
- "repr": "default",
- "ty": "Default"
- }
- }
- }
- },
- {
- "ident": "unsafety",
- "ty": {
- "option": {
- "token": {
- "repr": "unsafe",
- "ty": "Unsafe"
- }
- }
- }
- },
- {
- "ident": "impl_token",
- "ty": {
- "token": {
- "repr": "impl",
- "ty": "Impl"
- }
- }
- },
- {
- "ident": "generics",
- "ty": {
- "item": "Generics"
- }
- },
- {
- "ident": "trait_",
- "ty": {
- "option": {
- "tuple": [
- {
- "option": {
- "token": {
- "repr": "!",
- "ty": "Bang"
- }
- }
- },
- {
- "item": "Path"
- },
- {
- "token": {
- "repr": "for",
- "ty": "For"
- }
- }
- ]
- }
- }
- },
- {
- "ident": "self_ty",
- "ty": {
- "box": {
- "item": "Type"
- }
- }
- },
- {
- "ident": "brace_token",
- "ty": {
- "token_group": "Brace"
- }
- },
- {
- "ident": "items",
- "ty": {
- "vec": {
- "item": "ImplItem"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ItemMacro",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "option": {
- "item": "Ident"
- }
- }
- },
- {
- "ident": "mac",
- "ty": {
- "item": "Macro"
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "option": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ItemMacro2",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "macro_token",
- "ty": {
- "token": {
- "repr": "macro",
- "ty": "Macro"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "paren_token",
- "ty": {
- "token_group": "Paren"
- }
- },
- {
- "ident": "args",
- "ty": {
- "ext": "TokenStream"
- }
- },
- {
- "ident": "brace_token",
- "ty": {
- "token_group": "Brace"
- }
- },
- {
- "ident": "body",
- "ty": {
- "ext": "TokenStream"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ItemMod",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "mod_token",
- "ty": {
- "token": {
- "repr": "mod",
- "ty": "Mod"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "content",
- "ty": {
- "option": {
- "tuple": [
- {
- "token_group": "Brace"
- },
- {
- "vec": {
- "item": "Item"
- }
- }
- ]
- }
- }
- },
- {
- "ident": "semi",
- "ty": {
- "option": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ItemStatic",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "static_token",
- "ty": {
- "token": {
- "repr": "static",
- "ty": "Static"
- }
- }
- },
- {
- "ident": "mutability",
- "ty": {
- "option": {
- "token": {
- "repr": "mut",
- "ty": "Mut"
- }
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "colon_token",
- "ty": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- },
- {
- "ident": "ty",
- "ty": {
- "box": {
- "item": "Type"
- }
- }
- },
- {
- "ident": "eq_token",
- "ty": {
- "token": {
- "repr": "=",
- "ty": "Eq"
- }
- }
- },
- {
- "ident": "expr",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ItemStruct",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "struct_token",
- "ty": {
- "token": {
- "repr": "struct",
- "ty": "Struct"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "generics",
- "ty": {
- "item": "Generics"
- }
- },
- {
- "ident": "fields",
- "ty": {
- "item": "Fields"
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "option": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ItemTrait",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "unsafety",
- "ty": {
- "option": {
- "token": {
- "repr": "unsafe",
- "ty": "Unsafe"
- }
- }
- }
- },
- {
- "ident": "auto_token",
- "ty": {
- "option": {
- "token": {
- "repr": "auto",
- "ty": "Auto"
- }
- }
- }
- },
- {
- "ident": "trait_token",
- "ty": {
- "token": {
- "repr": "trait",
- "ty": "Trait"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "generics",
- "ty": {
- "item": "Generics"
- }
- },
- {
- "ident": "colon_token",
- "ty": {
- "option": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- }
- },
- {
- "ident": "supertraits",
- "ty": {
- "punctuated": [
- {
- "item": "TypeParamBound"
- },
- {
- "repr": "+",
- "ty": "Add"
- }
- ]
- }
- },
- {
- "ident": "brace_token",
- "ty": {
- "token_group": "Brace"
- }
- },
- {
- "ident": "items",
- "ty": {
- "vec": {
- "item": "TraitItem"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ItemTraitAlias",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "trait_token",
- "ty": {
- "token": {
- "repr": "trait",
- "ty": "Trait"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "generics",
- "ty": {
- "item": "Generics"
- }
- },
- {
- "ident": "eq_token",
- "ty": {
- "token": {
- "repr": "=",
- "ty": "Eq"
- }
- }
- },
- {
- "ident": "bounds",
- "ty": {
- "punctuated": [
- {
- "item": "TypeParamBound"
- },
- {
- "repr": "+",
- "ty": "Add"
- }
- ]
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ItemType",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "type_token",
- "ty": {
- "token": {
- "repr": "type",
- "ty": "Type"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "generics",
- "ty": {
- "item": "Generics"
- }
- },
- {
- "ident": "eq_token",
- "ty": {
- "token": {
- "repr": "=",
- "ty": "Eq"
- }
- }
- },
- {
- "ident": "ty",
- "ty": {
- "box": {
- "item": "Type"
- }
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ItemUnion",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "union_token",
- "ty": {
- "token": {
- "repr": "union",
- "ty": "Union"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "generics",
- "ty": {
- "item": "Generics"
- }
- },
- {
- "ident": "fields",
- "ty": {
- "item": "FieldsNamed"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ItemUse",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "vis",
- "ty": {
- "item": "Visibility"
- }
- },
- {
- "ident": "use_token",
- "ty": {
- "token": {
- "repr": "use",
- "ty": "Use"
- }
- }
- },
- {
- "ident": "leading_colon",
- "ty": {
- "option": {
- "token": {
- "repr": "::",
- "ty": "Colon2"
- }
- }
- }
- },
- {
- "ident": "tree",
- "ty": {
- "item": "UseTree"
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "ItemVerbatim",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "tts",
- "ty": {
- "ext": "TokenStream"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "Label",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "name",
- "ty": {
- "item": "Lifetime"
- }
- },
- {
- "ident": "colon_token",
- "ty": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "Lifetime",
- "features": {
- "any": []
- },
- "fields": [
- {
- "ident": "apostrophe",
- "ty": {
- "item": "Span"
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "LifetimeDef",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "lifetime",
- "ty": {
- "item": "Lifetime"
- }
- },
- {
- "ident": "colon_token",
- "ty": {
- "option": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- }
- },
- {
- "ident": "bounds",
- "ty": {
- "punctuated": [
- {
- "item": "Lifetime"
- },
- {
- "repr": "+",
- "ty": "Add"
- }
- ]
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "enum": {
- "ident": "Lit",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "Str",
- "fields": [
- {
- "item": "LitStr"
- }
- ]
- },
- {
- "ident": "ByteStr",
- "fields": [
- {
- "item": "LitByteStr"
- }
- ]
- },
- {
- "ident": "Byte",
- "fields": [
- {
- "item": "LitByte"
- }
- ]
- },
- {
- "ident": "Char",
- "fields": [
- {
- "item": "LitChar"
- }
- ]
- },
- {
- "ident": "Int",
- "fields": [
- {
- "item": "LitInt"
- }
- ]
- },
- {
- "ident": "Float",
- "fields": [
- {
- "item": "LitFloat"
- }
- ]
- },
- {
- "ident": "Bool",
- "fields": [
- {
- "item": "LitBool"
- }
- ]
- },
- {
- "ident": "Verbatim",
- "fields": [
- {
- "item": "LitVerbatim"
- }
- ]
- }
- ]
- }
- },
- {
- "struct": {
- "ident": "LitBool",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "value",
- "ty": {
- "std": "bool"
- }
- },
- {
- "ident": "span",
- "ty": {
- "item": "Span"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "LitByte",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "token",
- "ty": {
- "ext": "Literal"
- }
- }
- ],
- "all_fields_pub": false
- }
- },
- {
- "struct": {
- "ident": "LitByteStr",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "token",
- "ty": {
- "ext": "Literal"
- }
- }
- ],
- "all_fields_pub": false
- }
- },
- {
- "struct": {
- "ident": "LitChar",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "token",
- "ty": {
- "ext": "Literal"
- }
- }
- ],
- "all_fields_pub": false
- }
- },
- {
- "struct": {
- "ident": "LitFloat",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "token",
- "ty": {
- "ext": "Literal"
- }
- }
- ],
- "all_fields_pub": false
- }
- },
- {
- "struct": {
- "ident": "LitInt",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "token",
- "ty": {
- "ext": "Literal"
- }
- }
- ],
- "all_fields_pub": false
- }
- },
- {
- "struct": {
- "ident": "LitStr",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "token",
- "ty": {
- "ext": "Literal"
- }
- }
- ],
- "all_fields_pub": false
- }
- },
- {
- "struct": {
- "ident": "LitVerbatim",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "token",
- "ty": {
- "ext": "Literal"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "Local",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "let_token",
- "ty": {
- "token": {
- "repr": "let",
- "ty": "Let"
- }
- }
- },
- {
- "ident": "pats",
- "ty": {
- "punctuated": [
- {
- "item": "Pat"
- },
- {
- "repr": "|",
- "ty": "Or"
- }
- ]
- }
- },
- {
- "ident": "ty",
- "ty": {
- "option": {
- "tuple": [
- {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- },
- {
- "box": {
- "item": "Type"
- }
- }
- ]
- }
- }
- },
- {
- "ident": "init",
- "ty": {
- "option": {
- "tuple": [
- {
- "token": {
- "repr": "=",
- "ty": "Eq"
- }
- },
- {
- "box": {
- "item": "Expr"
- }
- }
- ]
- }
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "Macro",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "path",
- "ty": {
- "item": "Path"
- }
- },
- {
- "ident": "bang_token",
- "ty": {
+ {
+ "ident": "Inner",
+ "fields": [
+ {
"token": {
"repr": "!",
- "ty": "Bang"
+ "type": "Bang"
}
}
- },
- {
- "ident": "delimiter",
- "ty": {
- "item": "MacroDelimiter"
- }
- },
- {
- "ident": "tts",
- "ty": {
- "ext": "TokenStream"
- }
- }
- ],
- "all_fields_pub": true
- }
+ ]
+ }
+ ]
},
{
- "enum": {
- "ident": "MacroDelimiter",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "Paren",
- "fields": [
- {
- "token_group": "Paren"
- }
- ]
- },
- {
- "ident": "Brace",
- "fields": [
- {
- "token_group": "Brace"
- }
- ]
- },
- {
- "ident": "Bracket",
- "fields": [
- {
- "token_group": "Bracket"
- }
- ]
- }
+ "node": "struct",
+ "ident": "Attribute",
+ "features": {
+ "any": [
+ "full",
+ "derive"
]
- }
- },
- {
- "enum": {
- "ident": "Member",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "Named",
- "fields": [
- {
- "item": "Ident"
- }
- ]
- },
- {
- "ident": "Unnamed",
- "fields": [
- {
- "item": "Index"
- }
- ]
- }
- ]
- }
- },
- {
- "enum": {
- "ident": "Meta",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "Word",
- "fields": [
- {
- "item": "Ident"
- }
- ]
- },
- {
- "ident": "List",
- "fields": [
- {
- "item": "MetaList"
- }
- ]
- },
- {
- "ident": "NameValue",
- "fields": [
- {
- "item": "MetaNameValue"
- }
- ]
- }
- ]
- }
- },
- {
- "struct": {
- "ident": "MetaList",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
+ },
+ "fields": [
+ {
+ "ident": "pound_token",
+ "type": {
+ "token": {
+ "repr": "#",
+ "type": "Pound"
}
- },
- {
- "ident": "paren_token",
- "ty": {
- "token_group": "Paren"
- }
- },
- {
- "ident": "nested",
- "ty": {
- "punctuated": [
+ }
+ },
+ {
+ "ident": "style",
+ "type": {
+ "item": "AttrStyle"
+ }
+ },
+ {
+ "ident": "bracket_token",
+ "type": {
+ "group": "Bracket"
+ }
+ },
+ {
+ "ident": "path",
+ "type": {
+ "item": "Path"
+ }
+ },
+ {
+ "ident": "tts",
+ "type": {
+ "ext": "TokenStream"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "BareFnArg",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "name",
+ "type": {
+ "option": {
+ "tuple": [
{
- "item": "NestedMeta"
+ "item": "BareFnArgName"
},
{
- "repr": ",",
- "ty": "Comma"
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
}
]
}
}
- ],
- "all_fields_pub": true
- }
+ },
+ {
+ "ident": "ty",
+ "type": {
+ "item": "Type"
+ }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "struct": {
- "ident": "MetaNameValue",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "ident",
- "ty": {
+ "node": "enum",
+ "ident": "BareFnArgName",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Named",
+ "fields": [
+ {
"item": "Ident"
}
- },
- {
- "ident": "eq_token",
- "ty": {
+ ]
+ },
+ {
+ "ident": "Wild",
+ "fields": [
+ {
"token": {
- "repr": "=",
- "ty": "Eq"
+ "repr": "_",
+ "type": "Underscore"
}
}
- },
- {
- "ident": "lit",
- "ty": {
- "item": "Lit"
+ ]
+ }
+ ]
+ },
+ {
+ "node": "enum",
+ "ident": "BinOp",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Add",
+ "fields": [
+ {
+ "token": {
+ "repr": "+",
+ "type": "Add"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "Sub",
+ "fields": [
+ {
+ "token": {
+ "repr": "-",
+ "type": "Sub"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "Mul",
+ "fields": [
+ {
+ "token": {
+ "repr": "*",
+ "type": "Star"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "Div",
+ "fields": [
+ {
+ "token": {
+ "repr": "/",
+ "type": "Div"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "Rem",
+ "fields": [
+ {
+ "token": {
+ "repr": "%",
+ "type": "Rem"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "And",
+ "fields": [
+ {
+ "token": {
+ "repr": "&&",
+ "type": "AndAnd"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "Or",
+ "fields": [
+ {
+ "token": {
+ "repr": "||",
+ "type": "OrOr"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "BitXor",
+ "fields": [
+ {
+ "token": {
+ "repr": "^",
+ "type": "Caret"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "BitAnd",
+ "fields": [
+ {
+ "token": {
+ "repr": "&",
+ "type": "And"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "BitOr",
+ "fields": [
+ {
+ "token": {
+ "repr": "|",
+ "type": "Or"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "Shl",
+ "fields": [
+ {
+ "token": {
+ "repr": "<<",
+ "type": "Shl"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "Shr",
+ "fields": [
+ {
+ "token": {
+ "repr": ">>",
+ "type": "Shr"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "Eq",
+ "fields": [
+ {
+ "token": {
+ "repr": "==",
+ "type": "EqEq"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "Lt",
+ "fields": [
+ {
+ "token": {
+ "repr": "<",
+ "type": "Lt"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "Le",
+ "fields": [
+ {
+ "token": {
+ "repr": "<=",
+ "type": "Le"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "Ne",
+ "fields": [
+ {
+ "token": {
+ "repr": "!=",
+ "type": "Ne"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "Ge",
+ "fields": [
+ {
+ "token": {
+ "repr": ">=",
+ "type": "Ge"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "Gt",
+ "fields": [
+ {
+ "token": {
+ "repr": ">",
+ "type": "Gt"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "AddEq",
+ "fields": [
+ {
+ "token": {
+ "repr": "+=",
+ "type": "AddEq"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "SubEq",
+ "fields": [
+ {
+ "token": {
+ "repr": "-=",
+ "type": "SubEq"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "MulEq",
+ "fields": [
+ {
+ "token": {
+ "repr": "*=",
+ "type": "MulEq"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "DivEq",
+ "fields": [
+ {
+ "token": {
+ "repr": "/=",
+ "type": "DivEq"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "RemEq",
+ "fields": [
+ {
+ "token": {
+ "repr": "%=",
+ "type": "RemEq"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "BitXorEq",
+ "fields": [
+ {
+ "token": {
+ "repr": "^=",
+ "type": "CaretEq"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "BitAndEq",
+ "fields": [
+ {
+ "token": {
+ "repr": "&=",
+ "type": "AndEq"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "BitOrEq",
+ "fields": [
+ {
+ "token": {
+ "repr": "|=",
+ "type": "OrEq"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "ShlEq",
+ "fields": [
+ {
+ "token": {
+ "repr": "<<=",
+ "type": "ShlEq"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "ShrEq",
+ "fields": [
+ {
+ "token": {
+ "repr": ">>=",
+ "type": "ShrEq"
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "Binding",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "eq_token",
+ "type": {
+ "token": {
+ "repr": "=",
+ "type": "Eq"
}
}
- ],
- "all_fields_pub": true
- }
+ },
+ {
+ "ident": "ty",
+ "type": {
+ "item": "Type"
+ }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "struct": {
- "ident": "MethodSig",
- "features": {
- "any": [
- "full"
+ "node": "struct",
+ "ident": "Block",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "brace_token",
+ "type": {
+ "group": "Brace"
+ }
+ },
+ {
+ "ident": "stmts",
+ "type": {
+ "vec": {
+ "item": "Stmt"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "BoundLifetimes",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "for_token",
+ "type": {
+ "token": {
+ "repr": "for",
+ "type": "For"
+ }
+ }
+ },
+ {
+ "ident": "lt_token",
+ "type": {
+ "token": {
+ "repr": "<",
+ "type": "Lt"
+ }
+ }
+ },
+ {
+ "ident": "lifetimes",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "LifetimeDef"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ },
+ {
+ "ident": "gt_token",
+ "type": {
+ "token": {
+ "repr": ">",
+ "type": "Gt"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ConstParam",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "const_token",
+ "type": {
+ "token": {
+ "repr": "const",
+ "type": "Const"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ }
+ },
+ {
+ "ident": "ty",
+ "type": {
+ "item": "Type"
+ }
+ },
+ {
+ "ident": "eq_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "=",
+ "type": "Eq"
+ }
+ }
+ }
+ },
+ {
+ "ident": "default",
+ "type": {
+ "option": {
+ "item": "Expr"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "Constraint",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ }
+ },
+ {
+ "ident": "bounds",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "TypeParamBound"
+ },
+ "punct": {
+ "repr": "+",
+ "type": "Add"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "Data",
+ "features": {
+ "any": [
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Struct",
+ "fields": [
+ {
+ "item": "DataStruct"
+ }
]
},
- "fields": [
- {
- "ident": "constness",
- "ty": {
- "option": {
- "token": {
- "repr": "const",
- "ty": "Const"
+ {
+ "ident": "Enum",
+ "fields": [
+ {
+ "item": "DataEnum"
+ }
+ ]
+ },
+ {
+ "ident": "Union",
+ "fields": [
+ {
+ "item": "DataUnion"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "DataEnum",
+ "features": {
+ "any": [
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "enum_token",
+ "type": {
+ "token": {
+ "repr": "enum",
+ "type": "Enum"
+ }
+ }
+ },
+ {
+ "ident": "brace_token",
+ "type": {
+ "group": "Brace"
+ }
+ },
+ {
+ "ident": "variants",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Variant"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "DataStruct",
+ "features": {
+ "any": [
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "struct_token",
+ "type": {
+ "token": {
+ "repr": "struct",
+ "type": "Struct"
+ }
+ }
+ },
+ {
+ "ident": "fields",
+ "type": {
+ "item": "Fields"
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "DataUnion",
+ "features": {
+ "any": [
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "union_token",
+ "type": {
+ "token": {
+ "repr": "union",
+ "type": "Union"
+ }
+ }
+ },
+ {
+ "ident": "fields",
+ "type": {
+ "item": "FieldsNamed"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "DeriveInput",
+ "features": {
+ "any": [
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "generics",
+ "type": {
+ "item": "Generics"
+ }
+ },
+ {
+ "ident": "data",
+ "type": {
+ "item": "Data"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "Expr",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Box",
+ "fields": [
+ {
+ "item": "ExprBox"
+ }
+ ]
+ },
+ {
+ "ident": "InPlace",
+ "fields": [
+ {
+ "item": "ExprInPlace"
+ }
+ ]
+ },
+ {
+ "ident": "Array",
+ "fields": [
+ {
+ "item": "ExprArray"
+ }
+ ]
+ },
+ {
+ "ident": "Call",
+ "fields": [
+ {
+ "item": "ExprCall"
+ }
+ ]
+ },
+ {
+ "ident": "MethodCall",
+ "fields": [
+ {
+ "item": "ExprMethodCall"
+ }
+ ]
+ },
+ {
+ "ident": "Tuple",
+ "fields": [
+ {
+ "item": "ExprTuple"
+ }
+ ]
+ },
+ {
+ "ident": "Binary",
+ "fields": [
+ {
+ "item": "ExprBinary"
+ }
+ ]
+ },
+ {
+ "ident": "Unary",
+ "fields": [
+ {
+ "item": "ExprUnary"
+ }
+ ]
+ },
+ {
+ "ident": "Lit",
+ "fields": [
+ {
+ "item": "ExprLit"
+ }
+ ]
+ },
+ {
+ "ident": "Cast",
+ "fields": [
+ {
+ "item": "ExprCast"
+ }
+ ]
+ },
+ {
+ "ident": "Type",
+ "fields": [
+ {
+ "item": "ExprType"
+ }
+ ]
+ },
+ {
+ "ident": "Let",
+ "fields": [
+ {
+ "item": "ExprLet"
+ }
+ ]
+ },
+ {
+ "ident": "If",
+ "fields": [
+ {
+ "item": "ExprIf"
+ }
+ ]
+ },
+ {
+ "ident": "While",
+ "fields": [
+ {
+ "item": "ExprWhile"
+ }
+ ]
+ },
+ {
+ "ident": "ForLoop",
+ "fields": [
+ {
+ "item": "ExprForLoop"
+ }
+ ]
+ },
+ {
+ "ident": "Loop",
+ "fields": [
+ {
+ "item": "ExprLoop"
+ }
+ ]
+ },
+ {
+ "ident": "Match",
+ "fields": [
+ {
+ "item": "ExprMatch"
+ }
+ ]
+ },
+ {
+ "ident": "Closure",
+ "fields": [
+ {
+ "item": "ExprClosure"
+ }
+ ]
+ },
+ {
+ "ident": "Unsafe",
+ "fields": [
+ {
+ "item": "ExprUnsafe"
+ }
+ ]
+ },
+ {
+ "ident": "Block",
+ "fields": [
+ {
+ "item": "ExprBlock"
+ }
+ ]
+ },
+ {
+ "ident": "Assign",
+ "fields": [
+ {
+ "item": "ExprAssign"
+ }
+ ]
+ },
+ {
+ "ident": "AssignOp",
+ "fields": [
+ {
+ "item": "ExprAssignOp"
+ }
+ ]
+ },
+ {
+ "ident": "Field",
+ "fields": [
+ {
+ "item": "ExprField"
+ }
+ ]
+ },
+ {
+ "ident": "Index",
+ "fields": [
+ {
+ "item": "ExprIndex"
+ }
+ ]
+ },
+ {
+ "ident": "Range",
+ "fields": [
+ {
+ "item": "ExprRange"
+ }
+ ]
+ },
+ {
+ "ident": "Path",
+ "fields": [
+ {
+ "item": "ExprPath"
+ }
+ ]
+ },
+ {
+ "ident": "Reference",
+ "fields": [
+ {
+ "item": "ExprReference"
+ }
+ ]
+ },
+ {
+ "ident": "Break",
+ "fields": [
+ {
+ "item": "ExprBreak"
+ }
+ ]
+ },
+ {
+ "ident": "Continue",
+ "fields": [
+ {
+ "item": "ExprContinue"
+ }
+ ]
+ },
+ {
+ "ident": "Return",
+ "fields": [
+ {
+ "item": "ExprReturn"
+ }
+ ]
+ },
+ {
+ "ident": "Macro",
+ "fields": [
+ {
+ "item": "ExprMacro"
+ }
+ ]
+ },
+ {
+ "ident": "Struct",
+ "fields": [
+ {
+ "item": "ExprStruct"
+ }
+ ]
+ },
+ {
+ "ident": "Repeat",
+ "fields": [
+ {
+ "item": "ExprRepeat"
+ }
+ ]
+ },
+ {
+ "ident": "Paren",
+ "fields": [
+ {
+ "item": "ExprParen"
+ }
+ ]
+ },
+ {
+ "ident": "Group",
+ "fields": [
+ {
+ "item": "ExprGroup"
+ }
+ ]
+ },
+ {
+ "ident": "Try",
+ "fields": [
+ {
+ "item": "ExprTry"
+ }
+ ]
+ },
+ {
+ "ident": "Async",
+ "fields": [
+ {
+ "item": "ExprAsync"
+ }
+ ]
+ },
+ {
+ "ident": "TryBlock",
+ "fields": [
+ {
+ "item": "ExprTryBlock"
+ }
+ ]
+ },
+ {
+ "ident": "Yield",
+ "fields": [
+ {
+ "item": "ExprYield"
+ }
+ ]
+ },
+ {
+ "ident": "Verbatim",
+ "fields": [
+ {
+ "item": "ExprVerbatim"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "ExprArray",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "bracket_token",
+ "type": {
+ "group": "Bracket"
+ }
+ },
+ {
+ "ident": "elems",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Expr"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprAssign",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "left",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "eq_token",
+ "type": {
+ "token": {
+ "repr": "=",
+ "type": "Eq"
+ }
+ }
+ },
+ {
+ "ident": "right",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprAssignOp",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "left",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "op",
+ "type": {
+ "item": "BinOp"
+ }
+ },
+ {
+ "ident": "right",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprAsync",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "async_token",
+ "type": {
+ "token": {
+ "repr": "async",
+ "type": "Async"
+ }
+ }
+ },
+ {
+ "ident": "capture",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "move",
+ "type": "Move"
+ }
+ }
+ }
+ },
+ {
+ "ident": "block",
+ "type": {
+ "item": "Block"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprBinary",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "left",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "op",
+ "type": {
+ "item": "BinOp"
+ }
+ },
+ {
+ "ident": "right",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprBlock",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "label",
+ "type": {
+ "option": {
+ "item": "Label"
+ }
+ }
+ },
+ {
+ "ident": "block",
+ "type": {
+ "item": "Block"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprBox",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "box_token",
+ "type": {
+ "token": {
+ "repr": "box",
+ "type": "Box"
+ }
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprBreak",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "break_token",
+ "type": {
+ "token": {
+ "repr": "break",
+ "type": "Break"
+ }
+ }
+ },
+ {
+ "ident": "label",
+ "type": {
+ "option": {
+ "item": "Lifetime"
+ }
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "option": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprCall",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "func",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "paren_token",
+ "type": {
+ "group": "Paren"
+ }
+ },
+ {
+ "ident": "args",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Expr"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprCast",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "as_token",
+ "type": {
+ "token": {
+ "repr": "as",
+ "type": "As"
+ }
+ }
+ },
+ {
+ "ident": "ty",
+ "type": {
+ "box": {
+ "item": "Type"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprClosure",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "asyncness",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "async",
+ "type": "Async"
+ }
+ }
+ }
+ },
+ {
+ "ident": "movability",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "static",
+ "type": "Static"
+ }
+ }
+ }
+ },
+ {
+ "ident": "capture",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "move",
+ "type": "Move"
+ }
+ }
+ }
+ },
+ {
+ "ident": "or1_token",
+ "type": {
+ "token": {
+ "repr": "|",
+ "type": "Or"
+ }
+ }
+ },
+ {
+ "ident": "inputs",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "FnArg"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ },
+ {
+ "ident": "or2_token",
+ "type": {
+ "token": {
+ "repr": "|",
+ "type": "Or"
+ }
+ }
+ },
+ {
+ "ident": "output",
+ "type": {
+ "item": "ReturnType"
+ }
+ },
+ {
+ "ident": "body",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprContinue",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "continue_token",
+ "type": {
+ "token": {
+ "repr": "continue",
+ "type": "Continue"
+ }
+ }
+ },
+ {
+ "ident": "label",
+ "type": {
+ "option": {
+ "item": "Lifetime"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprField",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "base",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "dot_token",
+ "type": {
+ "token": {
+ "repr": ".",
+ "type": "Dot"
+ }
+ }
+ },
+ {
+ "ident": "member",
+ "type": {
+ "item": "Member"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprForLoop",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "label",
+ "type": {
+ "option": {
+ "item": "Label"
+ }
+ }
+ },
+ {
+ "ident": "for_token",
+ "type": {
+ "token": {
+ "repr": "for",
+ "type": "For"
+ }
+ }
+ },
+ {
+ "ident": "pat",
+ "type": {
+ "box": {
+ "item": "Pat"
+ }
+ }
+ },
+ {
+ "ident": "in_token",
+ "type": {
+ "token": {
+ "repr": "in",
+ "type": "In"
+ }
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "body",
+ "type": {
+ "item": "Block"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprGroup",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "group_token",
+ "type": {
+ "group": "Group"
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprIf",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "if_token",
+ "type": {
+ "token": {
+ "repr": "if",
+ "type": "If"
+ }
+ }
+ },
+ {
+ "ident": "cond",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "then_branch",
+ "type": {
+ "item": "Block"
+ }
+ },
+ {
+ "ident": "else_branch",
+ "type": {
+ "option": {
+ "tuple": [
+ {
+ "token": {
+ "repr": "else",
+ "type": "Else"
+ }
+ },
+ {
+ "box": {
+ "item": "Expr"
+ }
}
+ ]
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprInPlace",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "place",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "arrow_token",
+ "type": {
+ "token": {
+ "repr": "<-",
+ "type": "LArrow"
+ }
+ }
+ },
+ {
+ "ident": "value",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprIndex",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "bracket_token",
+ "type": {
+ "group": "Bracket"
+ }
+ },
+ {
+ "ident": "index",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprLet",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "let_token",
+ "type": {
+ "token": {
+ "repr": "let",
+ "type": "Let"
+ }
+ }
+ },
+ {
+ "ident": "pats",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Pat"
+ },
+ "punct": {
+ "repr": "|",
+ "type": "Or"
}
}
- },
- {
- "ident": "unsafety",
- "ty": {
- "option": {
- "token": {
- "repr": "unsafe",
- "ty": "Unsafe"
- }
+ }
+ },
+ {
+ "ident": "eq_token",
+ "type": {
+ "token": {
+ "repr": "=",
+ "type": "Eq"
+ }
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprLit",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "lit",
+ "type": {
+ "item": "Lit"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprLoop",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "label",
+ "type": {
+ "option": {
+ "item": "Label"
+ }
+ }
+ },
+ {
+ "ident": "loop_token",
+ "type": {
+ "token": {
+ "repr": "loop",
+ "type": "Loop"
+ }
+ }
+ },
+ {
+ "ident": "body",
+ "type": {
+ "item": "Block"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprMacro",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "mac",
+ "type": {
+ "item": "Macro"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprMatch",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "match_token",
+ "type": {
+ "token": {
+ "repr": "match",
+ "type": "Match"
+ }
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "brace_token",
+ "type": {
+ "group": "Brace"
+ }
+ },
+ {
+ "ident": "arms",
+ "type": {
+ "vec": {
+ "item": "Arm"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprMethodCall",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "receiver",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "dot_token",
+ "type": {
+ "token": {
+ "repr": ".",
+ "type": "Dot"
+ }
+ }
+ },
+ {
+ "ident": "method",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "turbofish",
+ "type": {
+ "option": {
+ "item": "MethodTurbofish"
+ }
+ }
+ },
+ {
+ "ident": "paren_token",
+ "type": {
+ "group": "Paren"
+ }
+ },
+ {
+ "ident": "args",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Expr"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
}
}
- },
- {
- "ident": "asyncness",
- "ty": {
- "option": {
- "token": {
- "repr": "async",
- "ty": "Async"
- }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprParen",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "paren_token",
+ "type": {
+ "group": "Paren"
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprPath",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "qself",
+ "type": {
+ "option": {
+ "item": "QSelf"
+ }
+ }
+ },
+ {
+ "ident": "path",
+ "type": {
+ "item": "Path"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprRange",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "from",
+ "type": {
+ "option": {
+ "box": {
+ "item": "Expr"
}
}
- },
- {
- "ident": "abi",
- "ty": {
- "option": {
- "item": "Abi"
+ }
+ },
+ {
+ "ident": "limits",
+ "type": {
+ "item": "RangeLimits"
+ }
+ },
+ {
+ "ident": "to",
+ "type": {
+ "option": {
+ "box": {
+ "item": "Expr"
}
}
- },
- {
- "ident": "ident",
- "ty": {
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprReference",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "and_token",
+ "type": {
+ "token": {
+ "repr": "&",
+ "type": "And"
+ }
+ }
+ },
+ {
+ "ident": "mutability",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "mut",
+ "type": "Mut"
+ }
+ }
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprRepeat",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "bracket_token",
+ "type": {
+ "group": "Bracket"
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ },
+ {
+ "ident": "len",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprReturn",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "return_token",
+ "type": {
+ "token": {
+ "repr": "return",
+ "type": "Return"
+ }
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "option": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprStruct",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "path",
+ "type": {
+ "item": "Path"
+ }
+ },
+ {
+ "ident": "brace_token",
+ "type": {
+ "group": "Brace"
+ }
+ },
+ {
+ "ident": "fields",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "FieldValue"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ },
+ {
+ "ident": "dot2_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "..",
+ "type": "Dot2"
+ }
+ }
+ }
+ },
+ {
+ "ident": "rest",
+ "type": {
+ "option": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprTry",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "question_token",
+ "type": {
+ "token": {
+ "repr": "?",
+ "type": "Question"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprTryBlock",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "try_token",
+ "type": {
+ "token": {
+ "repr": "try",
+ "type": "Try"
+ }
+ }
+ },
+ {
+ "ident": "block",
+ "type": {
+ "item": "Block"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprTuple",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "paren_token",
+ "type": {
+ "group": "Paren"
+ }
+ },
+ {
+ "ident": "elems",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Expr"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprType",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ }
+ },
+ {
+ "ident": "ty",
+ "type": {
+ "box": {
+ "item": "Type"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprUnary",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "op",
+ "type": {
+ "item": "UnOp"
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprUnsafe",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "unsafe_token",
+ "type": {
+ "token": {
+ "repr": "unsafe",
+ "type": "Unsafe"
+ }
+ }
+ },
+ {
+ "ident": "block",
+ "type": {
+ "item": "Block"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprVerbatim",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "tts",
+ "type": {
+ "ext": "TokenStream"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprWhile",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "label",
+ "type": {
+ "option": {
+ "item": "Label"
+ }
+ }
+ },
+ {
+ "ident": "while_token",
+ "type": {
+ "token": {
+ "repr": "while",
+ "type": "While"
+ }
+ }
+ },
+ {
+ "ident": "cond",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "body",
+ "type": {
+ "item": "Block"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ExprYield",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "yield_token",
+ "type": {
+ "token": {
+ "repr": "yield",
+ "type": "Yield"
+ }
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "option": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "Field",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "option": {
"item": "Ident"
}
- },
- {
- "ident": "decl",
- "ty": {
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ }
+ }
+ },
+ {
+ "ident": "ty",
+ "type": {
+ "item": "Type"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "FieldPat",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "member",
+ "type": {
+ "item": "Member"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ }
+ }
+ },
+ {
+ "ident": "pat",
+ "type": {
+ "box": {
+ "item": "Pat"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "FieldValue",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "member",
+ "type": {
+ "item": "Member"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ }
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "item": "Expr"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "Fields",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Named",
+ "fields": [
+ {
+ "item": "FieldsNamed"
+ }
+ ]
+ },
+ {
+ "ident": "Unnamed",
+ "fields": [
+ {
+ "item": "FieldsUnnamed"
+ }
+ ]
+ },
+ {
+ "ident": "Unit",
+ "fields": []
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "FieldsNamed",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "brace_token",
+ "type": {
+ "group": "Brace"
+ }
+ },
+ {
+ "ident": "named",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Field"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "FieldsUnnamed",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "paren_token",
+ "type": {
+ "group": "Paren"
+ }
+ },
+ {
+ "ident": "unnamed",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Field"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "File",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "shebang",
+ "type": {
+ "option": {
+ "std": "String"
+ }
+ }
+ },
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "items",
+ "type": {
+ "vec": {
+ "item": "Item"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "FnArg",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "SelfRef",
+ "fields": [
+ {
+ "item": "ArgSelfRef"
+ }
+ ]
+ },
+ {
+ "ident": "SelfValue",
+ "fields": [
+ {
+ "item": "ArgSelf"
+ }
+ ]
+ },
+ {
+ "ident": "Captured",
+ "fields": [
+ {
+ "item": "ArgCaptured"
+ }
+ ]
+ },
+ {
+ "ident": "Inferred",
+ "fields": [
+ {
+ "item": "Pat"
+ }
+ ]
+ },
+ {
+ "ident": "Ignored",
+ "fields": [
+ {
+ "item": "Type"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "FnDecl",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "fn_token",
+ "type": {
+ "token": {
+ "repr": "fn",
+ "type": "Fn"
+ }
+ }
+ },
+ {
+ "ident": "generics",
+ "type": {
+ "item": "Generics"
+ }
+ },
+ {
+ "ident": "paren_token",
+ "type": {
+ "group": "Paren"
+ }
+ },
+ {
+ "ident": "inputs",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "FnArg"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ },
+ {
+ "ident": "variadic",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "...",
+ "type": "Dot3"
+ }
+ }
+ }
+ },
+ {
+ "ident": "output",
+ "type": {
+ "item": "ReturnType"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "ForeignItem",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Fn",
+ "fields": [
+ {
+ "item": "ForeignItemFn"
+ }
+ ]
+ },
+ {
+ "ident": "Static",
+ "fields": [
+ {
+ "item": "ForeignItemStatic"
+ }
+ ]
+ },
+ {
+ "ident": "Type",
+ "fields": [
+ {
+ "item": "ForeignItemType"
+ }
+ ]
+ },
+ {
+ "ident": "Macro",
+ "fields": [
+ {
+ "item": "ForeignItemMacro"
+ }
+ ]
+ },
+ {
+ "ident": "Verbatim",
+ "fields": [
+ {
+ "item": "ForeignItemVerbatim"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "ForeignItemFn",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "decl",
+ "type": {
+ "box": {
"item": "FnDecl"
}
}
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "MethodTurbofish",
- "features": {
- "any": [
- "full"
- ]
},
- "fields": [
- {
- "ident": "colon2_token",
- "ty": {
- "token": {
- "repr": "::",
- "ty": "Colon2"
- }
- }
- },
- {
- "ident": "lt_token",
- "ty": {
- "token": {
- "repr": "<",
- "ty": "Lt"
- }
- }
- },
- {
- "ident": "args",
- "ty": {
- "punctuated": [
- {
- "item": "GenericMethodArgument"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- },
- {
- "ident": "gt_token",
- "ty": {
- "token": {
- "repr": ">",
- "ty": "Gt"
- }
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
}
}
- ],
- "all_fields_pub": true
- }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "enum": {
- "ident": "NestedMeta",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "Meta",
- "fields": [
- {
- "item": "Meta"
- }
- ]
- },
- {
- "ident": "Literal",
- "fields": [
- {
- "item": "Lit"
- }
- ]
- }
+ "node": "struct",
+ "ident": "ForeignItemMacro",
+ "features": {
+ "any": [
+ "full"
]
- }
- },
- {
- "struct": {
- "ident": "ParenthesizedGenericArguments",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "paren_token",
- "ty": {
- "token_group": "Paren"
- }
- },
- {
- "ident": "inputs",
- "ty": {
- "punctuated": [
- {
- "item": "Type"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- },
- {
- "ident": "output",
- "ty": {
- "item": "ReturnType"
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
}
}
- ],
- "all_fields_pub": true
- }
+ },
+ {
+ "ident": "mac",
+ "type": {
+ "item": "Macro"
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "enum": {
- "ident": "Pat",
- "features": {
- "any": [
- "full"
- ]
- },
- "variants": [
- {
- "ident": "Wild",
- "fields": [
- {
- "item": "PatWild"
- }
- ]
- },
- {
- "ident": "Ident",
- "fields": [
- {
- "item": "PatIdent"
- }
- ]
- },
- {
- "ident": "Struct",
- "fields": [
- {
- "item": "PatStruct"
- }
- ]
- },
- {
- "ident": "TupleStruct",
- "fields": [
- {
- "item": "PatTupleStruct"
- }
- ]
- },
- {
- "ident": "Path",
- "fields": [
- {
- "item": "PatPath"
- }
- ]
- },
- {
- "ident": "Tuple",
- "fields": [
- {
- "item": "PatTuple"
- }
- ]
- },
- {
- "ident": "Box",
- "fields": [
- {
- "item": "PatBox"
- }
- ]
- },
- {
- "ident": "Ref",
- "fields": [
- {
- "item": "PatRef"
- }
- ]
- },
- {
- "ident": "Lit",
- "fields": [
- {
- "item": "PatLit"
- }
- ]
- },
- {
- "ident": "Range",
- "fields": [
- {
- "item": "PatRange"
- }
- ]
- },
- {
- "ident": "Slice",
- "fields": [
- {
- "item": "PatSlice"
- }
- ]
- },
- {
- "ident": "Macro",
- "fields": [
- {
- "item": "PatMacro"
- }
- ]
- },
- {
- "ident": "Verbatim",
- "fields": [
- {
- "item": "PatVerbatim"
- }
- ]
- }
+ "node": "struct",
+ "ident": "ForeignItemStatic",
+ "features": {
+ "any": [
+ "full"
]
- }
- },
- {
- "struct": {
- "ident": "PatBox",
- "features": {
- "any": [
- "full"
- ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
},
- "fields": [
- {
- "ident": "box_token",
- "ty": {
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "static_token",
+ "type": {
+ "token": {
+ "repr": "static",
+ "type": "Static"
+ }
+ }
+ },
+ {
+ "ident": "mutability",
+ "type": {
+ "option": {
"token": {
- "repr": "box",
- "ty": "Box"
- }
- }
- },
- {
- "ident": "pat",
- "ty": {
- "box": {
- "item": "Pat"
+ "repr": "mut",
+ "type": "Mut"
}
}
}
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "PatIdent",
- "features": {
- "any": [
- "full"
- ]
},
- "fields": [
- {
- "ident": "by_ref",
- "ty": {
- "option": {
- "token": {
- "repr": "ref",
- "ty": "Ref"
- }
- }
- }
- },
- {
- "ident": "mutability",
- "ty": {
- "option": {
- "token": {
- "repr": "mut",
- "ty": "Mut"
- }
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "subpat",
- "ty": {
- "option": {
- "tuple": [
- {
- "token": {
- "repr": "@",
- "ty": "At"
- }
- },
- {
- "box": {
- "item": "Pat"
- }
- }
- ]
- }
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
}
}
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "PatLit",
- "features": {
- "any": [
- "full"
- ]
},
- "fields": [
- {
- "ident": "expr",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "PatMacro",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "mac",
- "ty": {
- "item": "Macro"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "PatPath",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "qself",
- "ty": {
- "option": {
- "item": "QSelf"
- }
- }
- },
- {
- "ident": "path",
- "ty": {
- "item": "Path"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "PatRange",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "lo",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- },
- {
- "ident": "limits",
- "ty": {
- "item": "RangeLimits"
- }
- },
- {
- "ident": "hi",
- "ty": {
- "box": {
- "item": "Expr"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "PatRef",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "and_token",
- "ty": {
- "token": {
- "repr": "&",
- "ty": "And"
- }
- }
- },
- {
- "ident": "mutability",
- "ty": {
- "option": {
- "token": {
- "repr": "mut",
- "ty": "Mut"
- }
- }
- }
- },
- {
- "ident": "pat",
- "ty": {
- "box": {
- "item": "Pat"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "PatSlice",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "bracket_token",
- "ty": {
- "token_group": "Bracket"
- }
- },
- {
- "ident": "front",
- "ty": {
- "punctuated": [
- {
- "item": "Pat"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- },
- {
- "ident": "middle",
- "ty": {
- "option": {
- "box": {
- "item": "Pat"
- }
- }
- }
- },
- {
- "ident": "dot2_token",
- "ty": {
- "option": {
- "token": {
- "repr": "..",
- "ty": "Dot2"
- }
- }
- }
- },
- {
- "ident": "comma_token",
- "ty": {
- "option": {
- "token": {
- "repr": ",",
- "ty": "Comma"
- }
- }
- }
- },
- {
- "ident": "back",
- "ty": {
- "punctuated": [
- {
- "item": "Pat"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "PatStruct",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "path",
- "ty": {
- "item": "Path"
- }
- },
- {
- "ident": "brace_token",
- "ty": {
- "token_group": "Brace"
- }
- },
- {
- "ident": "fields",
- "ty": {
- "punctuated": [
- {
- "item": "FieldPat"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- },
- {
- "ident": "dot2_token",
- "ty": {
- "option": {
- "token": {
- "repr": "..",
- "ty": "Dot2"
- }
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "PatTuple",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "paren_token",
- "ty": {
- "token_group": "Paren"
- }
- },
- {
- "ident": "front",
- "ty": {
- "punctuated": [
- {
- "item": "Pat"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- },
- {
- "ident": "dot2_token",
- "ty": {
- "option": {
- "token": {
- "repr": "..",
- "ty": "Dot2"
- }
- }
- }
- },
- {
- "ident": "comma_token",
- "ty": {
- "option": {
- "token": {
- "repr": ",",
- "ty": "Comma"
- }
- }
- }
- },
- {
- "ident": "back",
- "ty": {
- "punctuated": [
- {
- "item": "Pat"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "PatTupleStruct",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "path",
- "ty": {
- "item": "Path"
- }
- },
- {
- "ident": "pat",
- "ty": {
- "item": "PatTuple"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "PatVerbatim",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "tts",
- "ty": {
- "ext": "TokenStream"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "PatWild",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "underscore_token",
- "ty": {
- "token": {
- "repr": "_",
- "ty": "Underscore"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "Path",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "leading_colon",
- "ty": {
- "option": {
- "token": {
- "repr": "::",
- "ty": "Colon2"
- }
- }
- }
- },
- {
- "ident": "segments",
- "ty": {
- "punctuated": [
- {
- "item": "PathSegment"
- },
- {
- "repr": "::",
- "ty": "Colon2"
- }
- ]
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "enum": {
- "ident": "PathArguments",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "None",
- "fields": []
- },
- {
- "ident": "AngleBracketed",
- "fields": [
- {
- "item": "AngleBracketedGenericArguments"
- }
- ]
- },
- {
- "ident": "Parenthesized",
- "fields": [
- {
- "item": "ParenthesizedGenericArguments"
- }
- ]
- }
- ]
- }
- },
- {
- "struct": {
- "ident": "PathSegment",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "arguments",
- "ty": {
- "item": "PathArguments"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "PredicateEq",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "lhs_ty",
- "ty": {
- "item": "Type"
- }
- },
- {
- "ident": "eq_token",
- "ty": {
- "token": {
- "repr": "=",
- "ty": "Eq"
- }
- }
- },
- {
- "ident": "rhs_ty",
- "ty": {
+ {
+ "ident": "ty",
+ "type": {
+ "box": {
"item": "Type"
}
}
- ],
- "all_fields_pub": true
- }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "struct": {
- "ident": "PredicateLifetime",
- "features": {
- "any": [
- "full",
- "derive"
- ]
+ "node": "struct",
+ "ident": "ForeignItemType",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
},
- "fields": [
- {
- "ident": "lifetime",
- "ty": {
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "type_token",
+ "type": {
+ "token": {
+ "repr": "type",
+ "type": "Type"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ForeignItemVerbatim",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "tts",
+ "type": {
+ "ext": "TokenStream"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "GenericArgument",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Lifetime",
+ "fields": [
+ {
"item": "Lifetime"
}
- },
- {
- "ident": "colon_token",
- "ty": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- },
- {
- "ident": "bounds",
- "ty": {
- "punctuated": [
- {
- "item": "Lifetime"
- },
- {
- "repr": "+",
- "ty": "Add"
- }
- ]
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "PredicateType",
- "features": {
- "any": [
- "full",
- "derive"
]
},
- "fields": [
- {
- "ident": "lifetimes",
- "ty": {
- "option": {
- "item": "BoundLifetimes"
- }
- }
- },
- {
- "ident": "bounded_ty",
- "ty": {
+ {
+ "ident": "Type",
+ "fields": [
+ {
"item": "Type"
}
- },
- {
- "ident": "colon_token",
- "ty": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- },
- {
- "ident": "bounds",
- "ty": {
- "punctuated": [
- {
- "item": "TypeParamBound"
- },
- {
- "repr": "+",
- "ty": "Add"
- }
- ]
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "QSelf",
- "features": {
- "any": [
- "full",
- "derive"
]
},
- "fields": [
- {
- "ident": "lt_token",
- "ty": {
+ {
+ "ident": "Binding",
+ "fields": [
+ {
+ "item": "Binding"
+ }
+ ]
+ },
+ {
+ "ident": "Constraint",
+ "fields": [
+ {
+ "item": "Constraint"
+ }
+ ]
+ },
+ {
+ "ident": "Const",
+ "fields": [
+ {
+ "item": "Expr"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "enum",
+ "ident": "GenericMethodArgument",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Type",
+ "fields": [
+ {
+ "item": "Type"
+ }
+ ]
+ },
+ {
+ "ident": "Const",
+ "fields": [
+ {
+ "item": "Expr"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "enum",
+ "ident": "GenericParam",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Type",
+ "fields": [
+ {
+ "item": "TypeParam"
+ }
+ ]
+ },
+ {
+ "ident": "Lifetime",
+ "fields": [
+ {
+ "item": "LifetimeDef"
+ }
+ ]
+ },
+ {
+ "ident": "Const",
+ "fields": [
+ {
+ "item": "ConstParam"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "Generics",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "lt_token",
+ "type": {
+ "option": {
"token": {
"repr": "<",
- "ty": "Lt"
+ "type": "Lt"
}
}
- },
- {
- "ident": "ty",
- "ty": {
- "box": {
- "item": "Type"
+ }
+ },
+ {
+ "ident": "params",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "GenericParam"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
}
}
- },
- {
- "ident": "position",
- "ty": {
- "std": "usize"
- }
- },
- {
- "ident": "as_token",
- "ty": {
- "option": {
- "token": {
- "repr": "as",
- "ty": "As"
- }
- }
- }
- },
- {
- "ident": "gt_token",
- "ty": {
+ }
+ },
+ {
+ "ident": "gt_token",
+ "type": {
+ "option": {
"token": {
"repr": ">",
- "ty": "Gt"
+ "type": "Gt"
}
}
}
- ],
- "all_fields_pub": true
- }
+ },
+ {
+ "ident": "where_clause",
+ "type": {
+ "option": {
+ "item": "WhereClause"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "enum": {
- "ident": "RangeLimits",
- "features": {
- "any": [
- "full"
- ]
- },
- "variants": [
- {
- "ident": "HalfOpen",
- "fields": [
- {
- "token": {
- "repr": "..",
- "ty": "Dot2"
- }
- }
- ]
- },
- {
- "ident": "Closed",
- "fields": [
- {
- "token": {
- "repr": "..=",
- "ty": "DotDotEq"
- }
- }
- ]
- }
+ "node": "struct",
+ "ident": "Ident",
+ "features": {
+ "any": []
+ },
+ "fields": [],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "ImplItem",
+ "features": {
+ "any": [
+ "full"
]
- }
- },
- {
- "enum": {
- "ident": "ReturnType",
- "features": {
- "any": [
- "full",
- "derive"
+ },
+ "variants": [
+ {
+ "ident": "Const",
+ "fields": [
+ {
+ "item": "ImplItemConst"
+ }
]
},
- "variants": [
- {
- "ident": "Default",
- "fields": []
- },
- {
- "ident": "Type",
- "fields": [
- {
- "token": {
- "repr": "->",
- "ty": "RArrow"
- }
- },
- {
- "box": {
- "item": "Type"
- }
- }
- ]
- }
+ {
+ "ident": "Method",
+ "fields": [
+ {
+ "item": "ImplItemMethod"
+ }
+ ]
+ },
+ {
+ "ident": "Type",
+ "fields": [
+ {
+ "item": "ImplItemType"
+ }
+ ]
+ },
+ {
+ "ident": "Existential",
+ "fields": [
+ {
+ "item": "ImplItemExistential"
+ }
+ ]
+ },
+ {
+ "ident": "Macro",
+ "fields": [
+ {
+ "item": "ImplItemMacro"
+ }
+ ]
+ },
+ {
+ "ident": "Verbatim",
+ "fields": [
+ {
+ "item": "ImplItemVerbatim"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "ImplItemConst",
+ "features": {
+ "any": [
+ "full"
]
- }
- },
- {
- "struct": {
- "ident": "Span",
- "features": {
- "any": []
- },
- "fields": [],
- "all_fields_pub": true
- }
- },
- {
- "enum": {
- "ident": "Stmt",
- "features": {
- "any": [
- "full"
- ]
- },
- "variants": [
- {
- "ident": "Local",
- "fields": [
- {
- "item": "Local"
- }
- ]
- },
- {
- "ident": "Item",
- "fields": [
- {
- "item": "Item"
- }
- ]
- },
- {
- "ident": "Expr",
- "fields": [
- {
- "item": "Expr"
- }
- ]
- },
- {
- "ident": "Semi",
- "fields": [
- {
- "item": "Expr"
- },
- {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- ]
- }
- ]
- }
- },
- {
- "struct": {
- "ident": "TraitBound",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "paren_token",
- "ty": {
- "option": {
- "token_group": "Paren"
- }
- }
- },
- {
- "ident": "modifier",
- "ty": {
- "item": "TraitBoundModifier"
- }
- },
- {
- "ident": "lifetimes",
- "ty": {
- "option": {
- "item": "BoundLifetimes"
- }
- }
- },
- {
- "ident": "path",
- "ty": {
- "item": "Path"
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
}
}
- ],
- "all_fields_pub": true
- }
- },
- {
- "enum": {
- "ident": "TraitBoundModifier",
- "features": {
- "any": [
- "full",
- "derive"
- ]
},
- "variants": [
- {
- "ident": "None",
- "fields": []
- },
- {
- "ident": "Maybe",
- "fields": [
- {
- "token": {
- "repr": "?",
- "ty": "Question"
- }
- }
- ]
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
}
- ]
- }
- },
- {
- "enum": {
- "ident": "TraitItem",
- "features": {
- "any": [
- "full"
- ]
},
- "variants": [
- {
- "ident": "Const",
- "fields": [
- {
- "item": "TraitItemConst"
- }
- ]
- },
- {
- "ident": "Method",
- "fields": [
- {
- "item": "TraitItemMethod"
- }
- ]
- },
- {
- "ident": "Type",
- "fields": [
- {
- "item": "TraitItemType"
- }
- ]
- },
- {
- "ident": "Macro",
- "fields": [
- {
- "item": "TraitItemMacro"
- }
- ]
- },
- {
- "ident": "Verbatim",
- "fields": [
- {
- "item": "TraitItemVerbatim"
- }
- ]
- }
- ]
- }
- },
- {
- "struct": {
- "ident": "TraitItemConst",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "const_token",
- "ty": {
+ {
+ "ident": "defaultness",
+ "type": {
+ "option": {
"token": {
- "repr": "const",
- "ty": "Const"
+ "repr": "default",
+ "type": "Default"
}
}
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
+ }
+ },
+ {
+ "ident": "const_token",
+ "type": {
+ "token": {
+ "repr": "const",
+ "type": "Const"
}
- },
- {
- "ident": "colon_token",
- "ty": {
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ }
+ },
+ {
+ "ident": "ty",
+ "type": {
+ "item": "Type"
+ }
+ },
+ {
+ "ident": "eq_token",
+ "type": {
+ "token": {
+ "repr": "=",
+ "type": "Eq"
+ }
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "item": "Expr"
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ImplItemExistential",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "existential_token",
+ "type": {
+ "token": {
+ "repr": "existential",
+ "type": "Existential"
+ }
+ }
+ },
+ {
+ "ident": "type_token",
+ "type": {
+ "token": {
+ "repr": "type",
+ "type": "Type"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "generics",
+ "type": {
+ "item": "Generics"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "option": {
"token": {
"repr": ":",
- "ty": "Colon"
+ "type": "Colon"
}
}
- },
- {
- "ident": "ty",
- "ty": {
+ }
+ },
+ {
+ "ident": "bounds",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "TypeParamBound"
+ },
+ "punct": {
+ "repr": "+",
+ "type": "Add"
+ }
+ }
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ImplItemMacro",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "mac",
+ "type": {
+ "item": "Macro"
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ImplItemMethod",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "defaultness",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "default",
+ "type": "Default"
+ }
+ }
+ }
+ },
+ {
+ "ident": "sig",
+ "type": {
+ "item": "MethodSig"
+ }
+ },
+ {
+ "ident": "block",
+ "type": {
+ "item": "Block"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ImplItemType",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "defaultness",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "default",
+ "type": "Default"
+ }
+ }
+ }
+ },
+ {
+ "ident": "type_token",
+ "type": {
+ "token": {
+ "repr": "type",
+ "type": "Type"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "generics",
+ "type": {
+ "item": "Generics"
+ }
+ },
+ {
+ "ident": "eq_token",
+ "type": {
+ "token": {
+ "repr": "=",
+ "type": "Eq"
+ }
+ }
+ },
+ {
+ "ident": "ty",
+ "type": {
+ "item": "Type"
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ImplItemVerbatim",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "tts",
+ "type": {
+ "ext": "TokenStream"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "Index",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "index",
+ "type": {
+ "std": "u32"
+ }
+ },
+ {
+ "ident": "span",
+ "type": {
+ "item": "Span"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "Item",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "ExternCrate",
+ "fields": [
+ {
+ "item": "ItemExternCrate"
+ }
+ ]
+ },
+ {
+ "ident": "Use",
+ "fields": [
+ {
+ "item": "ItemUse"
+ }
+ ]
+ },
+ {
+ "ident": "Static",
+ "fields": [
+ {
+ "item": "ItemStatic"
+ }
+ ]
+ },
+ {
+ "ident": "Const",
+ "fields": [
+ {
+ "item": "ItemConst"
+ }
+ ]
+ },
+ {
+ "ident": "Fn",
+ "fields": [
+ {
+ "item": "ItemFn"
+ }
+ ]
+ },
+ {
+ "ident": "Mod",
+ "fields": [
+ {
+ "item": "ItemMod"
+ }
+ ]
+ },
+ {
+ "ident": "ForeignMod",
+ "fields": [
+ {
+ "item": "ItemForeignMod"
+ }
+ ]
+ },
+ {
+ "ident": "Type",
+ "fields": [
+ {
+ "item": "ItemType"
+ }
+ ]
+ },
+ {
+ "ident": "Existential",
+ "fields": [
+ {
+ "item": "ItemExistential"
+ }
+ ]
+ },
+ {
+ "ident": "Struct",
+ "fields": [
+ {
+ "item": "ItemStruct"
+ }
+ ]
+ },
+ {
+ "ident": "Enum",
+ "fields": [
+ {
+ "item": "ItemEnum"
+ }
+ ]
+ },
+ {
+ "ident": "Union",
+ "fields": [
+ {
+ "item": "ItemUnion"
+ }
+ ]
+ },
+ {
+ "ident": "Trait",
+ "fields": [
+ {
+ "item": "ItemTrait"
+ }
+ ]
+ },
+ {
+ "ident": "TraitAlias",
+ "fields": [
+ {
+ "item": "ItemTraitAlias"
+ }
+ ]
+ },
+ {
+ "ident": "Impl",
+ "fields": [
+ {
+ "item": "ItemImpl"
+ }
+ ]
+ },
+ {
+ "ident": "Macro",
+ "fields": [
+ {
+ "item": "ItemMacro"
+ }
+ ]
+ },
+ {
+ "ident": "Macro2",
+ "fields": [
+ {
+ "item": "ItemMacro2"
+ }
+ ]
+ },
+ {
+ "ident": "Verbatim",
+ "fields": [
+ {
+ "item": "ItemVerbatim"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "ItemConst",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "const_token",
+ "type": {
+ "token": {
+ "repr": "const",
+ "type": "Const"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ }
+ },
+ {
+ "ident": "ty",
+ "type": {
+ "box": {
"item": "Type"
}
- },
- {
- "ident": "default",
- "ty": {
- "option": {
- "tuple": [
- {
- "token": {
- "repr": "=",
- "ty": "Eq"
- }
- },
- {
- "item": "Expr"
- }
- ]
- }
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
+ }
+ },
+ {
+ "ident": "eq_token",
+ "type": {
+ "token": {
+ "repr": "=",
+ "type": "Eq"
}
}
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "TraitItemMacro",
- "features": {
- "any": [
- "full"
- ]
},
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "mac",
- "ty": {
- "item": "Macro"
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "option": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "TraitItemMethod",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "sig",
- "ty": {
- "item": "MethodSig"
- }
- },
- {
- "ident": "default",
- "ty": {
- "option": {
- "item": "Block"
- }
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "option": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "TraitItemType",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "type_token",
- "ty": {
- "token": {
- "repr": "type",
- "ty": "Type"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "generics",
- "ty": {
- "item": "Generics"
- }
- },
- {
- "ident": "colon_token",
- "ty": {
- "option": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
- }
- }
- },
- {
- "ident": "bounds",
- "ty": {
- "punctuated": [
- {
- "item": "TypeParamBound"
- },
- {
- "repr": "+",
- "ty": "Add"
- }
- ]
- }
- },
- {
- "ident": "default",
- "ty": {
- "option": {
- "tuple": [
- {
- "token": {
- "repr": "=",
- "ty": "Eq"
- }
- },
- {
- "item": "Type"
- }
- ]
- }
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "TraitItemVerbatim",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "tts",
- "ty": {
- "ext": "TokenStream"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "enum": {
- "ident": "Type",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "Slice",
- "fields": [
- {
- "item": "TypeSlice"
- }
- ]
- },
- {
- "ident": "Array",
- "fields": [
- {
- "item": "TypeArray"
- }
- ]
- },
- {
- "ident": "Ptr",
- "fields": [
- {
- "item": "TypePtr"
- }
- ]
- },
- {
- "ident": "Reference",
- "fields": [
- {
- "item": "TypeReference"
- }
- ]
- },
- {
- "ident": "BareFn",
- "fields": [
- {
- "item": "TypeBareFn"
- }
- ]
- },
- {
- "ident": "Never",
- "fields": [
- {
- "item": "TypeNever"
- }
- ]
- },
- {
- "ident": "Tuple",
- "fields": [
- {
- "item": "TypeTuple"
- }
- ]
- },
- {
- "ident": "Path",
- "fields": [
- {
- "item": "TypePath"
- }
- ]
- },
- {
- "ident": "TraitObject",
- "fields": [
- {
- "item": "TypeTraitObject"
- }
- ]
- },
- {
- "ident": "ImplTrait",
- "fields": [
- {
- "item": "TypeImplTrait"
- }
- ]
- },
- {
- "ident": "Paren",
- "fields": [
- {
- "item": "TypeParen"
- }
- ]
- },
- {
- "ident": "Group",
- "fields": [
- {
- "item": "TypeGroup"
- }
- ]
- },
- {
- "ident": "Infer",
- "fields": [
- {
- "item": "TypeInfer"
- }
- ]
- },
- {
- "ident": "Macro",
- "fields": [
- {
- "item": "TypeMacro"
- }
- ]
- },
- {
- "ident": "Verbatim",
- "fields": [
- {
- "item": "TypeVerbatim"
- }
- ]
- }
- ]
- }
- },
- {
- "struct": {
- "ident": "TypeArray",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "bracket_token",
- "ty": {
- "token_group": "Bracket"
- }
- },
- {
- "ident": "elem",
- "ty": {
- "box": {
- "item": "Type"
- }
- }
- },
- {
- "ident": "semi_token",
- "ty": {
- "token": {
- "repr": ";",
- "ty": "Semi"
- }
- }
- },
- {
- "ident": "len",
- "ty": {
+ {
+ "ident": "expr",
+ "type": {
+ "box": {
"item": "Expr"
}
}
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "TypeBareFn",
- "features": {
- "any": [
- "full",
- "derive"
- ]
},
- "fields": [
- {
- "ident": "lifetimes",
- "ty": {
- "option": {
- "item": "BoundLifetimes"
- }
- }
- },
- {
- "ident": "unsafety",
- "ty": {
- "option": {
- "token": {
- "repr": "unsafe",
- "ty": "Unsafe"
- }
- }
- }
- },
- {
- "ident": "abi",
- "ty": {
- "option": {
- "item": "Abi"
- }
- }
- },
- {
- "ident": "fn_token",
- "ty": {
- "token": {
- "repr": "fn",
- "ty": "Fn"
- }
- }
- },
- {
- "ident": "paren_token",
- "ty": {
- "token_group": "Paren"
- }
- },
- {
- "ident": "inputs",
- "ty": {
- "punctuated": [
- {
- "item": "BareFnArg"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- },
- {
- "ident": "variadic",
- "ty": {
- "option": {
- "token": {
- "repr": "...",
- "ty": "Dot3"
- }
- }
- }
- },
- {
- "ident": "output",
- "ty": {
- "item": "ReturnType"
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
}
}
- ],
- "all_fields_pub": true
- }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "struct": {
- "ident": "TypeGroup",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "group_token",
- "ty": {
- "token_group": "Group"
+ "node": "struct",
+ "ident": "ItemEnum",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
}
- },
- {
- "ident": "elem",
- "ty": {
- "box": {
- "item": "Type"
+ }
+ },
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "enum_token",
+ "type": {
+ "token": {
+ "repr": "enum",
+ "type": "Enum"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "generics",
+ "type": {
+ "item": "Generics"
+ }
+ },
+ {
+ "ident": "brace_token",
+ "type": {
+ "group": "Brace"
+ }
+ },
+ {
+ "ident": "variants",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Variant"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
}
}
}
- ],
- "all_fields_pub": true
- }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "struct": {
- "ident": "TypeImplTrait",
- "features": {
- "any": [
- "full",
- "derive"
- ]
+ "node": "struct",
+ "ident": "ItemExistential",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
},
- "fields": [
- {
- "ident": "impl_token",
- "ty": {
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "existential_token",
+ "type": {
+ "token": {
+ "repr": "existential",
+ "type": "Existential"
+ }
+ }
+ },
+ {
+ "ident": "type_token",
+ "type": {
+ "token": {
+ "repr": "type",
+ "type": "Type"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "generics",
+ "type": {
+ "item": "Generics"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "option": {
"token": {
- "repr": "impl",
- "ty": "Impl"
+ "repr": ":",
+ "type": "Colon"
}
}
- },
- {
- "ident": "bounds",
- "ty": {
- "punctuated": [
+ }
+ },
+ {
+ "ident": "bounds",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "TypeParamBound"
+ },
+ "punct": {
+ "repr": "+",
+ "type": "Add"
+ }
+ }
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ItemExternCrate",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "extern_token",
+ "type": {
+ "token": {
+ "repr": "extern",
+ "type": "Extern"
+ }
+ }
+ },
+ {
+ "ident": "crate_token",
+ "type": {
+ "token": {
+ "repr": "crate",
+ "type": "Crate"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "rename",
+ "type": {
+ "option": {
+ "tuple": [
{
- "item": "TypeParamBound"
+ "token": {
+ "repr": "as",
+ "type": "As"
+ }
},
{
- "repr": "+",
- "ty": "Add"
+ "item": "Ident"
}
]
}
}
- ],
- "all_fields_pub": true
- }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "struct": {
- "ident": "TypeInfer",
- "features": {
- "any": [
- "full",
- "derive"
- ]
+ "node": "struct",
+ "ident": "ItemFn",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
},
- "fields": [
- {
- "ident": "underscore_token",
- "ty": {
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "constness",
+ "type": {
+ "option": {
"token": {
- "repr": "_",
- "ty": "Underscore"
+ "repr": "const",
+ "type": "Const"
}
}
}
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "TypeMacro",
- "features": {
- "any": [
- "full",
- "derive"
- ]
},
- "fields": [
- {
- "ident": "mac",
- "ty": {
- "item": "Macro"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "TypeNever",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "bang_token",
- "ty": {
+ {
+ "ident": "unsafety",
+ "type": {
+ "option": {
"token": {
- "repr": "!",
- "ty": "Bang"
+ "repr": "unsafe",
+ "type": "Unsafe"
}
}
}
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "TypeParam",
- "features": {
- "any": [
- "full",
- "derive"
- ]
},
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
+ {
+ "ident": "asyncness",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "async",
+ "type": "Async"
}
}
- },
- {
- "ident": "ident",
- "ty": {
+ }
+ },
+ {
+ "ident": "abi",
+ "type": {
+ "option": {
+ "item": "Abi"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "decl",
+ "type": {
+ "box": {
+ "item": "FnDecl"
+ }
+ }
+ },
+ {
+ "ident": "block",
+ "type": {
+ "box": {
+ "item": "Block"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ItemForeignMod",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "abi",
+ "type": {
+ "item": "Abi"
+ }
+ },
+ {
+ "ident": "brace_token",
+ "type": {
+ "group": "Brace"
+ }
+ },
+ {
+ "ident": "items",
+ "type": {
+ "vec": {
+ "item": "ForeignItem"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ItemImpl",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "defaultness",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "default",
+ "type": "Default"
+ }
+ }
+ }
+ },
+ {
+ "ident": "unsafety",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "unsafe",
+ "type": "Unsafe"
+ }
+ }
+ }
+ },
+ {
+ "ident": "impl_token",
+ "type": {
+ "token": {
+ "repr": "impl",
+ "type": "Impl"
+ }
+ }
+ },
+ {
+ "ident": "generics",
+ "type": {
+ "item": "Generics"
+ }
+ },
+ {
+ "ident": "trait_",
+ "type": {
+ "option": {
+ "tuple": [
+ {
+ "option": {
+ "token": {
+ "repr": "!",
+ "type": "Bang"
+ }
+ }
+ },
+ {
+ "item": "Path"
+ },
+ {
+ "token": {
+ "repr": "for",
+ "type": "For"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ident": "self_ty",
+ "type": {
+ "box": {
+ "item": "Type"
+ }
+ }
+ },
+ {
+ "ident": "brace_token",
+ "type": {
+ "group": "Brace"
+ }
+ },
+ {
+ "ident": "items",
+ "type": {
+ "vec": {
+ "item": "ImplItem"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ItemMacro",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "option": {
"item": "Ident"
}
- },
- {
- "ident": "colon_token",
- "ty": {
- "option": {
- "token": {
- "repr": ":",
- "ty": "Colon"
- }
+ }
+ },
+ {
+ "ident": "mac",
+ "type": {
+ "item": "Macro"
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
}
}
- },
- {
- "ident": "bounds",
- "ty": {
- "punctuated": [
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ItemMacro2",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "macro_token",
+ "type": {
+ "token": {
+ "repr": "macro",
+ "type": "Macro"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "paren_token",
+ "type": {
+ "group": "Paren"
+ }
+ },
+ {
+ "ident": "args",
+ "type": {
+ "ext": "TokenStream"
+ }
+ },
+ {
+ "ident": "brace_token",
+ "type": {
+ "group": "Brace"
+ }
+ },
+ {
+ "ident": "body",
+ "type": {
+ "ext": "TokenStream"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ItemMod",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "mod_token",
+ "type": {
+ "token": {
+ "repr": "mod",
+ "type": "Mod"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "content",
+ "type": {
+ "option": {
+ "tuple": [
{
- "item": "TypeParamBound"
+ "group": "Brace"
},
{
- "repr": "+",
- "ty": "Add"
+ "vec": {
+ "item": "Item"
+ }
}
]
}
- },
- {
- "ident": "eq_token",
- "ty": {
- "option": {
- "token": {
- "repr": "=",
- "ty": "Eq"
- }
- }
- }
- },
- {
- "ident": "default",
- "ty": {
- "option": {
- "item": "Type"
+ }
+ },
+ {
+ "ident": "semi",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
}
}
}
- ],
- "all_fields_pub": true
- }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "enum": {
- "ident": "TypeParamBound",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "Trait",
- "fields": [
- {
- "item": "TraitBound"
- }
- ]
- },
- {
- "ident": "Lifetime",
- "fields": [
- {
- "item": "Lifetime"
- }
- ]
- }
+ "node": "struct",
+ "ident": "ItemStatic",
+ "features": {
+ "any": [
+ "full"
]
- }
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "static_token",
+ "type": {
+ "token": {
+ "repr": "static",
+ "type": "Static"
+ }
+ }
+ },
+ {
+ "ident": "mutability",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "mut",
+ "type": "Mut"
+ }
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ }
+ },
+ {
+ "ident": "ty",
+ "type": {
+ "box": {
+ "item": "Type"
+ }
+ }
+ },
+ {
+ "ident": "eq_token",
+ "type": {
+ "token": {
+ "repr": "=",
+ "type": "Eq"
+ }
+ }
+ },
+ {
+ "ident": "expr",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "struct": {
- "ident": "TypeParen",
- "features": {
- "any": [
- "full",
- "derive"
+ "node": "struct",
+ "ident": "ItemStruct",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "struct_token",
+ "type": {
+ "token": {
+ "repr": "struct",
+ "type": "Struct"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "generics",
+ "type": {
+ "item": "Generics"
+ }
+ },
+ {
+ "ident": "fields",
+ "type": {
+ "item": "Fields"
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ItemTrait",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "unsafety",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "unsafe",
+ "type": "Unsafe"
+ }
+ }
+ }
+ },
+ {
+ "ident": "auto_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "auto",
+ "type": "Auto"
+ }
+ }
+ }
+ },
+ {
+ "ident": "trait_token",
+ "type": {
+ "token": {
+ "repr": "trait",
+ "type": "Trait"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "generics",
+ "type": {
+ "item": "Generics"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ }
+ }
+ },
+ {
+ "ident": "supertraits",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "TypeParamBound"
+ },
+ "punct": {
+ "repr": "+",
+ "type": "Add"
+ }
+ }
+ }
+ },
+ {
+ "ident": "brace_token",
+ "type": {
+ "group": "Brace"
+ }
+ },
+ {
+ "ident": "items",
+ "type": {
+ "vec": {
+ "item": "TraitItem"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ItemTraitAlias",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "trait_token",
+ "type": {
+ "token": {
+ "repr": "trait",
+ "type": "Trait"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "generics",
+ "type": {
+ "item": "Generics"
+ }
+ },
+ {
+ "ident": "eq_token",
+ "type": {
+ "token": {
+ "repr": "=",
+ "type": "Eq"
+ }
+ }
+ },
+ {
+ "ident": "bounds",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "TypeParamBound"
+ },
+ "punct": {
+ "repr": "+",
+ "type": "Add"
+ }
+ }
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ItemType",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "type_token",
+ "type": {
+ "token": {
+ "repr": "type",
+ "type": "Type"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "generics",
+ "type": {
+ "item": "Generics"
+ }
+ },
+ {
+ "ident": "eq_token",
+ "type": {
+ "token": {
+ "repr": "=",
+ "type": "Eq"
+ }
+ }
+ },
+ {
+ "ident": "ty",
+ "type": {
+ "box": {
+ "item": "Type"
+ }
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ItemUnion",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "union_token",
+ "type": {
+ "token": {
+ "repr": "union",
+ "type": "Union"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "generics",
+ "type": {
+ "item": "Generics"
+ }
+ },
+ {
+ "ident": "fields",
+ "type": {
+ "item": "FieldsNamed"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ItemUse",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "vis",
+ "type": {
+ "item": "Visibility"
+ }
+ },
+ {
+ "ident": "use_token",
+ "type": {
+ "token": {
+ "repr": "use",
+ "type": "Use"
+ }
+ }
+ },
+ {
+ "ident": "leading_colon",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "::",
+ "type": "Colon2"
+ }
+ }
+ }
+ },
+ {
+ "ident": "tree",
+ "type": {
+ "item": "UseTree"
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "ItemVerbatim",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "tts",
+ "type": {
+ "ext": "TokenStream"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "Label",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "name",
+ "type": {
+ "item": "Lifetime"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "Lifetime",
+ "features": {
+ "any": []
+ },
+ "fields": [
+ {
+ "ident": "apostrophe",
+ "type": {
+ "item": "Span"
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "LifetimeDef",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "lifetime",
+ "type": {
+ "item": "Lifetime"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ }
+ }
+ },
+ {
+ "ident": "bounds",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Lifetime"
+ },
+ "punct": {
+ "repr": "+",
+ "type": "Add"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "Lit",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Str",
+ "fields": [
+ {
+ "item": "LitStr"
+ }
]
},
- "fields": [
- {
- "ident": "paren_token",
- "ty": {
- "token_group": "Paren"
+ {
+ "ident": "ByteStr",
+ "fields": [
+ {
+ "item": "LitByteStr"
}
- },
- {
- "ident": "elem",
- "ty": {
+ ]
+ },
+ {
+ "ident": "Byte",
+ "fields": [
+ {
+ "item": "LitByte"
+ }
+ ]
+ },
+ {
+ "ident": "Char",
+ "fields": [
+ {
+ "item": "LitChar"
+ }
+ ]
+ },
+ {
+ "ident": "Int",
+ "fields": [
+ {
+ "item": "LitInt"
+ }
+ ]
+ },
+ {
+ "ident": "Float",
+ "fields": [
+ {
+ "item": "LitFloat"
+ }
+ ]
+ },
+ {
+ "ident": "Bool",
+ "fields": [
+ {
+ "item": "LitBool"
+ }
+ ]
+ },
+ {
+ "ident": "Verbatim",
+ "fields": [
+ {
+ "item": "LitVerbatim"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "LitBool",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "value",
+ "type": {
+ "std": "bool"
+ }
+ },
+ {
+ "ident": "span",
+ "type": {
+ "item": "Span"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "LitByte",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "token",
+ "type": {
+ "ext": "Literal"
+ }
+ }
+ ],
+ "all_fields_pub": false
+ },
+ {
+ "node": "struct",
+ "ident": "LitByteStr",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "token",
+ "type": {
+ "ext": "Literal"
+ }
+ }
+ ],
+ "all_fields_pub": false
+ },
+ {
+ "node": "struct",
+ "ident": "LitChar",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "token",
+ "type": {
+ "ext": "Literal"
+ }
+ }
+ ],
+ "all_fields_pub": false
+ },
+ {
+ "node": "struct",
+ "ident": "LitFloat",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "token",
+ "type": {
+ "ext": "Literal"
+ }
+ }
+ ],
+ "all_fields_pub": false
+ },
+ {
+ "node": "struct",
+ "ident": "LitInt",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "token",
+ "type": {
+ "ext": "Literal"
+ }
+ }
+ ],
+ "all_fields_pub": false
+ },
+ {
+ "node": "struct",
+ "ident": "LitStr",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "token",
+ "type": {
+ "ext": "Literal"
+ }
+ }
+ ],
+ "all_fields_pub": false
+ },
+ {
+ "node": "struct",
+ "ident": "LitVerbatim",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "token",
+ "type": {
+ "ext": "Literal"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "Local",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "let_token",
+ "type": {
+ "token": {
+ "repr": "let",
+ "type": "Let"
+ }
+ }
+ },
+ {
+ "ident": "pats",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Pat"
+ },
+ "punct": {
+ "repr": "|",
+ "type": "Or"
+ }
+ }
+ }
+ },
+ {
+ "ident": "ty",
+ "type": {
+ "option": {
+ "tuple": [
+ {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ },
+ {
+ "box": {
+ "item": "Type"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ident": "init",
+ "type": {
+ "option": {
+ "tuple": [
+ {
+ "token": {
+ "repr": "=",
+ "type": "Eq"
+ }
+ },
+ {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "Macro",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "path",
+ "type": {
+ "item": "Path"
+ }
+ },
+ {
+ "ident": "bang_token",
+ "type": {
+ "token": {
+ "repr": "!",
+ "type": "Bang"
+ }
+ }
+ },
+ {
+ "ident": "delimiter",
+ "type": {
+ "item": "MacroDelimiter"
+ }
+ },
+ {
+ "ident": "tts",
+ "type": {
+ "ext": "TokenStream"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "MacroDelimiter",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Paren",
+ "fields": [
+ {
+ "group": "Paren"
+ }
+ ]
+ },
+ {
+ "ident": "Brace",
+ "fields": [
+ {
+ "group": "Brace"
+ }
+ ]
+ },
+ {
+ "ident": "Bracket",
+ "fields": [
+ {
+ "group": "Bracket"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "enum",
+ "ident": "Member",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Named",
+ "fields": [
+ {
+ "item": "Ident"
+ }
+ ]
+ },
+ {
+ "ident": "Unnamed",
+ "fields": [
+ {
+ "item": "Index"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "enum",
+ "ident": "Meta",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Word",
+ "fields": [
+ {
+ "item": "Ident"
+ }
+ ]
+ },
+ {
+ "ident": "List",
+ "fields": [
+ {
+ "item": "MetaList"
+ }
+ ]
+ },
+ {
+ "ident": "NameValue",
+ "fields": [
+ {
+ "item": "MetaNameValue"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "MetaList",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "paren_token",
+ "type": {
+ "group": "Paren"
+ }
+ },
+ {
+ "ident": "nested",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "NestedMeta"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "MetaNameValue",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "eq_token",
+ "type": {
+ "token": {
+ "repr": "=",
+ "type": "Eq"
+ }
+ }
+ },
+ {
+ "ident": "lit",
+ "type": {
+ "item": "Lit"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "MethodSig",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "constness",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "const",
+ "type": "Const"
+ }
+ }
+ }
+ },
+ {
+ "ident": "unsafety",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "unsafe",
+ "type": "Unsafe"
+ }
+ }
+ }
+ },
+ {
+ "ident": "asyncness",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "async",
+ "type": "Async"
+ }
+ }
+ }
+ },
+ {
+ "ident": "abi",
+ "type": {
+ "option": {
+ "item": "Abi"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "decl",
+ "type": {
+ "item": "FnDecl"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "MethodTurbofish",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "colon2_token",
+ "type": {
+ "token": {
+ "repr": "::",
+ "type": "Colon2"
+ }
+ }
+ },
+ {
+ "ident": "lt_token",
+ "type": {
+ "token": {
+ "repr": "<",
+ "type": "Lt"
+ }
+ }
+ },
+ {
+ "ident": "args",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "GenericMethodArgument"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ },
+ {
+ "ident": "gt_token",
+ "type": {
+ "token": {
+ "repr": ">",
+ "type": "Gt"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "NestedMeta",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Meta",
+ "fields": [
+ {
+ "item": "Meta"
+ }
+ ]
+ },
+ {
+ "ident": "Literal",
+ "fields": [
+ {
+ "item": "Lit"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "ParenthesizedGenericArguments",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "paren_token",
+ "type": {
+ "group": "Paren"
+ }
+ },
+ {
+ "ident": "inputs",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Type"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ },
+ {
+ "ident": "output",
+ "type": {
+ "item": "ReturnType"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "Pat",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Wild",
+ "fields": [
+ {
+ "item": "PatWild"
+ }
+ ]
+ },
+ {
+ "ident": "Ident",
+ "fields": [
+ {
+ "item": "PatIdent"
+ }
+ ]
+ },
+ {
+ "ident": "Struct",
+ "fields": [
+ {
+ "item": "PatStruct"
+ }
+ ]
+ },
+ {
+ "ident": "TupleStruct",
+ "fields": [
+ {
+ "item": "PatTupleStruct"
+ }
+ ]
+ },
+ {
+ "ident": "Path",
+ "fields": [
+ {
+ "item": "PatPath"
+ }
+ ]
+ },
+ {
+ "ident": "Tuple",
+ "fields": [
+ {
+ "item": "PatTuple"
+ }
+ ]
+ },
+ {
+ "ident": "Box",
+ "fields": [
+ {
+ "item": "PatBox"
+ }
+ ]
+ },
+ {
+ "ident": "Ref",
+ "fields": [
+ {
+ "item": "PatRef"
+ }
+ ]
+ },
+ {
+ "ident": "Lit",
+ "fields": [
+ {
+ "item": "PatLit"
+ }
+ ]
+ },
+ {
+ "ident": "Range",
+ "fields": [
+ {
+ "item": "PatRange"
+ }
+ ]
+ },
+ {
+ "ident": "Slice",
+ "fields": [
+ {
+ "item": "PatSlice"
+ }
+ ]
+ },
+ {
+ "ident": "Macro",
+ "fields": [
+ {
+ "item": "PatMacro"
+ }
+ ]
+ },
+ {
+ "ident": "Verbatim",
+ "fields": [
+ {
+ "item": "PatVerbatim"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "PatBox",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "box_token",
+ "type": {
+ "token": {
+ "repr": "box",
+ "type": "Box"
+ }
+ }
+ },
+ {
+ "ident": "pat",
+ "type": {
+ "box": {
+ "item": "Pat"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "PatIdent",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "by_ref",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "ref",
+ "type": "Ref"
+ }
+ }
+ }
+ },
+ {
+ "ident": "mutability",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "mut",
+ "type": "Mut"
+ }
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "subpat",
+ "type": {
+ "option": {
+ "tuple": [
+ {
+ "token": {
+ "repr": "@",
+ "type": "At"
+ }
+ },
+ {
+ "box": {
+ "item": "Pat"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "PatLit",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "expr",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "PatMacro",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "mac",
+ "type": {
+ "item": "Macro"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "PatPath",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "qself",
+ "type": {
+ "option": {
+ "item": "QSelf"
+ }
+ }
+ },
+ {
+ "ident": "path",
+ "type": {
+ "item": "Path"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "PatRange",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "lo",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ },
+ {
+ "ident": "limits",
+ "type": {
+ "item": "RangeLimits"
+ }
+ },
+ {
+ "ident": "hi",
+ "type": {
+ "box": {
+ "item": "Expr"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "PatRef",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "and_token",
+ "type": {
+ "token": {
+ "repr": "&",
+ "type": "And"
+ }
+ }
+ },
+ {
+ "ident": "mutability",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "mut",
+ "type": "Mut"
+ }
+ }
+ }
+ },
+ {
+ "ident": "pat",
+ "type": {
+ "box": {
+ "item": "Pat"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "PatSlice",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "bracket_token",
+ "type": {
+ "group": "Bracket"
+ }
+ },
+ {
+ "ident": "front",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Pat"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ },
+ {
+ "ident": "middle",
+ "type": {
+ "option": {
+ "box": {
+ "item": "Pat"
+ }
+ }
+ }
+ },
+ {
+ "ident": "dot2_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "..",
+ "type": "Dot2"
+ }
+ }
+ }
+ },
+ {
+ "ident": "comma_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ },
+ {
+ "ident": "back",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Pat"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "PatStruct",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "path",
+ "type": {
+ "item": "Path"
+ }
+ },
+ {
+ "ident": "brace_token",
+ "type": {
+ "group": "Brace"
+ }
+ },
+ {
+ "ident": "fields",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "FieldPat"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ },
+ {
+ "ident": "dot2_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "..",
+ "type": "Dot2"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "PatTuple",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "paren_token",
+ "type": {
+ "group": "Paren"
+ }
+ },
+ {
+ "ident": "front",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Pat"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ },
+ {
+ "ident": "dot2_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "..",
+ "type": "Dot2"
+ }
+ }
+ }
+ },
+ {
+ "ident": "comma_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ },
+ {
+ "ident": "back",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Pat"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "PatTupleStruct",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "path",
+ "type": {
+ "item": "Path"
+ }
+ },
+ {
+ "ident": "pat",
+ "type": {
+ "item": "PatTuple"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "PatVerbatim",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "tts",
+ "type": {
+ "ext": "TokenStream"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "PatWild",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "underscore_token",
+ "type": {
+ "token": {
+ "repr": "_",
+ "type": "Underscore"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "Path",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "leading_colon",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "::",
+ "type": "Colon2"
+ }
+ }
+ }
+ },
+ {
+ "ident": "segments",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "PathSegment"
+ },
+ "punct": {
+ "repr": "::",
+ "type": "Colon2"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "PathArguments",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "None",
+ "fields": []
+ },
+ {
+ "ident": "AngleBracketed",
+ "fields": [
+ {
+ "item": "AngleBracketedGenericArguments"
+ }
+ ]
+ },
+ {
+ "ident": "Parenthesized",
+ "fields": [
+ {
+ "item": "ParenthesizedGenericArguments"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "PathSegment",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "arguments",
+ "type": {
+ "item": "PathArguments"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "PredicateEq",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "lhs_ty",
+ "type": {
+ "item": "Type"
+ }
+ },
+ {
+ "ident": "eq_token",
+ "type": {
+ "token": {
+ "repr": "=",
+ "type": "Eq"
+ }
+ }
+ },
+ {
+ "ident": "rhs_ty",
+ "type": {
+ "item": "Type"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "PredicateLifetime",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "lifetime",
+ "type": {
+ "item": "Lifetime"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ }
+ },
+ {
+ "ident": "bounds",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Lifetime"
+ },
+ "punct": {
+ "repr": "+",
+ "type": "Add"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "PredicateType",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "lifetimes",
+ "type": {
+ "option": {
+ "item": "BoundLifetimes"
+ }
+ }
+ },
+ {
+ "ident": "bounded_ty",
+ "type": {
+ "item": "Type"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ }
+ },
+ {
+ "ident": "bounds",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "TypeParamBound"
+ },
+ "punct": {
+ "repr": "+",
+ "type": "Add"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "QSelf",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "lt_token",
+ "type": {
+ "token": {
+ "repr": "<",
+ "type": "Lt"
+ }
+ }
+ },
+ {
+ "ident": "ty",
+ "type": {
+ "box": {
+ "item": "Type"
+ }
+ }
+ },
+ {
+ "ident": "position",
+ "type": {
+ "std": "usize"
+ }
+ },
+ {
+ "ident": "as_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "as",
+ "type": "As"
+ }
+ }
+ }
+ },
+ {
+ "ident": "gt_token",
+ "type": {
+ "token": {
+ "repr": ">",
+ "type": "Gt"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "RangeLimits",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "HalfOpen",
+ "fields": [
+ {
+ "token": {
+ "repr": "..",
+ "type": "Dot2"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "Closed",
+ "fields": [
+ {
+ "token": {
+ "repr": "..=",
+ "type": "DotDotEq"
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "enum",
+ "ident": "ReturnType",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Default",
+ "fields": []
+ },
+ {
+ "ident": "Type",
+ "fields": [
+ {
+ "token": {
+ "repr": "->",
+ "type": "RArrow"
+ }
+ },
+ {
"box": {
"item": "Type"
}
}
- }
- ],
- "all_fields_pub": true
- }
+ ]
+ }
+ ]
},
{
- "struct": {
- "ident": "TypePath",
- "features": {
- "any": [
- "full",
- "derive"
+ "node": "struct",
+ "ident": "Span",
+ "features": {
+ "any": []
+ },
+ "fields": [],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "Stmt",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Local",
+ "fields": [
+ {
+ "item": "Local"
+ }
]
},
- "fields": [
- {
- "ident": "qself",
- "ty": {
- "option": {
- "item": "QSelf"
+ {
+ "ident": "Item",
+ "fields": [
+ {
+ "item": "Item"
+ }
+ ]
+ },
+ {
+ "ident": "Expr",
+ "fields": [
+ {
+ "item": "Expr"
+ }
+ ]
+ },
+ {
+ "ident": "Semi",
+ "fields": [
+ {
+ "item": "Expr"
+ },
+ {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
}
}
- },
- {
- "ident": "path",
- "ty": {
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "TraitBound",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "paren_token",
+ "type": {
+ "option": {
+ "group": "Paren"
+ }
+ }
+ },
+ {
+ "ident": "modifier",
+ "type": {
+ "item": "TraitBoundModifier"
+ }
+ },
+ {
+ "ident": "lifetimes",
+ "type": {
+ "option": {
+ "item": "BoundLifetimes"
+ }
+ }
+ },
+ {
+ "ident": "path",
+ "type": {
+ "item": "Path"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "TraitBoundModifier",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "None",
+ "fields": []
+ },
+ {
+ "ident": "Maybe",
+ "fields": [
+ {
+ "token": {
+ "repr": "?",
+ "type": "Question"
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "enum",
+ "ident": "TraitItem",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Const",
+ "fields": [
+ {
+ "item": "TraitItemConst"
+ }
+ ]
+ },
+ {
+ "ident": "Method",
+ "fields": [
+ {
+ "item": "TraitItemMethod"
+ }
+ ]
+ },
+ {
+ "ident": "Type",
+ "fields": [
+ {
+ "item": "TraitItemType"
+ }
+ ]
+ },
+ {
+ "ident": "Macro",
+ "fields": [
+ {
+ "item": "TraitItemMacro"
+ }
+ ]
+ },
+ {
+ "ident": "Verbatim",
+ "fields": [
+ {
+ "item": "TraitItemVerbatim"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "TraitItemConst",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "const_token",
+ "type": {
+ "token": {
+ "repr": "const",
+ "type": "Const"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ }
+ },
+ {
+ "ident": "ty",
+ "type": {
+ "item": "Type"
+ }
+ },
+ {
+ "ident": "default",
+ "type": {
+ "option": {
+ "tuple": [
+ {
+ "token": {
+ "repr": "=",
+ "type": "Eq"
+ }
+ },
+ {
+ "item": "Expr"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TraitItemMacro",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "mac",
+ "type": {
+ "item": "Macro"
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TraitItemMethod",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "sig",
+ "type": {
+ "item": "MethodSig"
+ }
+ },
+ {
+ "ident": "default",
+ "type": {
+ "option": {
+ "item": "Block"
+ }
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TraitItemType",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "type_token",
+ "type": {
+ "token": {
+ "repr": "type",
+ "type": "Type"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "generics",
+ "type": {
+ "item": "Generics"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ }
+ }
+ },
+ {
+ "ident": "bounds",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "TypeParamBound"
+ },
+ "punct": {
+ "repr": "+",
+ "type": "Add"
+ }
+ }
+ }
+ },
+ {
+ "ident": "default",
+ "type": {
+ "option": {
+ "tuple": [
+ {
+ "token": {
+ "repr": "=",
+ "type": "Eq"
+ }
+ },
+ {
+ "item": "Type"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TraitItemVerbatim",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "tts",
+ "type": {
+ "ext": "TokenStream"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "Type",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Slice",
+ "fields": [
+ {
+ "item": "TypeSlice"
+ }
+ ]
+ },
+ {
+ "ident": "Array",
+ "fields": [
+ {
+ "item": "TypeArray"
+ }
+ ]
+ },
+ {
+ "ident": "Ptr",
+ "fields": [
+ {
+ "item": "TypePtr"
+ }
+ ]
+ },
+ {
+ "ident": "Reference",
+ "fields": [
+ {
+ "item": "TypeReference"
+ }
+ ]
+ },
+ {
+ "ident": "BareFn",
+ "fields": [
+ {
+ "item": "TypeBareFn"
+ }
+ ]
+ },
+ {
+ "ident": "Never",
+ "fields": [
+ {
+ "item": "TypeNever"
+ }
+ ]
+ },
+ {
+ "ident": "Tuple",
+ "fields": [
+ {
+ "item": "TypeTuple"
+ }
+ ]
+ },
+ {
+ "ident": "Path",
+ "fields": [
+ {
+ "item": "TypePath"
+ }
+ ]
+ },
+ {
+ "ident": "TraitObject",
+ "fields": [
+ {
+ "item": "TypeTraitObject"
+ }
+ ]
+ },
+ {
+ "ident": "ImplTrait",
+ "fields": [
+ {
+ "item": "TypeImplTrait"
+ }
+ ]
+ },
+ {
+ "ident": "Paren",
+ "fields": [
+ {
+ "item": "TypeParen"
+ }
+ ]
+ },
+ {
+ "ident": "Group",
+ "fields": [
+ {
+ "item": "TypeGroup"
+ }
+ ]
+ },
+ {
+ "ident": "Infer",
+ "fields": [
+ {
+ "item": "TypeInfer"
+ }
+ ]
+ },
+ {
+ "ident": "Macro",
+ "fields": [
+ {
+ "item": "TypeMacro"
+ }
+ ]
+ },
+ {
+ "ident": "Verbatim",
+ "fields": [
+ {
+ "item": "TypeVerbatim"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "TypeArray",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "bracket_token",
+ "type": {
+ "group": "Bracket"
+ }
+ },
+ {
+ "ident": "elem",
+ "type": {
+ "box": {
+ "item": "Type"
+ }
+ }
+ },
+ {
+ "ident": "semi_token",
+ "type": {
+ "token": {
+ "repr": ";",
+ "type": "Semi"
+ }
+ }
+ },
+ {
+ "ident": "len",
+ "type": {
+ "item": "Expr"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TypeBareFn",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "lifetimes",
+ "type": {
+ "option": {
+ "item": "BoundLifetimes"
+ }
+ }
+ },
+ {
+ "ident": "unsafety",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "unsafe",
+ "type": "Unsafe"
+ }
+ }
+ }
+ },
+ {
+ "ident": "abi",
+ "type": {
+ "option": {
+ "item": "Abi"
+ }
+ }
+ },
+ {
+ "ident": "fn_token",
+ "type": {
+ "token": {
+ "repr": "fn",
+ "type": "Fn"
+ }
+ }
+ },
+ {
+ "ident": "paren_token",
+ "type": {
+ "group": "Paren"
+ }
+ },
+ {
+ "ident": "inputs",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "BareFnArg"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ },
+ {
+ "ident": "variadic",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "...",
+ "type": "Dot3"
+ }
+ }
+ }
+ },
+ {
+ "ident": "output",
+ "type": {
+ "item": "ReturnType"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TypeGroup",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "group_token",
+ "type": {
+ "group": "Group"
+ }
+ },
+ {
+ "ident": "elem",
+ "type": {
+ "box": {
+ "item": "Type"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TypeImplTrait",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "impl_token",
+ "type": {
+ "token": {
+ "repr": "impl",
+ "type": "Impl"
+ }
+ }
+ },
+ {
+ "ident": "bounds",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "TypeParamBound"
+ },
+ "punct": {
+ "repr": "+",
+ "type": "Add"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TypeInfer",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "underscore_token",
+ "type": {
+ "token": {
+ "repr": "_",
+ "type": "Underscore"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TypeMacro",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "mac",
+ "type": {
+ "item": "Macro"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TypeNever",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "bang_token",
+ "type": {
+ "token": {
+ "repr": "!",
+ "type": "Bang"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TypeParam",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "colon_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": ":",
+ "type": "Colon"
+ }
+ }
+ }
+ },
+ {
+ "ident": "bounds",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "TypeParamBound"
+ },
+ "punct": {
+ "repr": "+",
+ "type": "Add"
+ }
+ }
+ }
+ },
+ {
+ "ident": "eq_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "=",
+ "type": "Eq"
+ }
+ }
+ }
+ },
+ {
+ "ident": "default",
+ "type": {
+ "option": {
+ "item": "Type"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "TypeParamBound",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Trait",
+ "fields": [
+ {
+ "item": "TraitBound"
+ }
+ ]
+ },
+ {
+ "ident": "Lifetime",
+ "fields": [
+ {
+ "item": "Lifetime"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "TypeParen",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "paren_token",
+ "type": {
+ "group": "Paren"
+ }
+ },
+ {
+ "ident": "elem",
+ "type": {
+ "box": {
+ "item": "Type"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TypePath",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "qself",
+ "type": {
+ "option": {
+ "item": "QSelf"
+ }
+ }
+ },
+ {
+ "ident": "path",
+ "type": {
+ "item": "Path"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TypePtr",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "star_token",
+ "type": {
+ "token": {
+ "repr": "*",
+ "type": "Star"
+ }
+ }
+ },
+ {
+ "ident": "const_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "const",
+ "type": "Const"
+ }
+ }
+ }
+ },
+ {
+ "ident": "mutability",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "mut",
+ "type": "Mut"
+ }
+ }
+ }
+ },
+ {
+ "ident": "elem",
+ "type": {
+ "box": {
+ "item": "Type"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TypeReference",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "and_token",
+ "type": {
+ "token": {
+ "repr": "&",
+ "type": "And"
+ }
+ }
+ },
+ {
+ "ident": "lifetime",
+ "type": {
+ "option": {
+ "item": "Lifetime"
+ }
+ }
+ },
+ {
+ "ident": "mutability",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "mut",
+ "type": "Mut"
+ }
+ }
+ }
+ },
+ {
+ "ident": "elem",
+ "type": {
+ "box": {
+ "item": "Type"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TypeSlice",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "bracket_token",
+ "type": {
+ "group": "Bracket"
+ }
+ },
+ {
+ "ident": "elem",
+ "type": {
+ "box": {
+ "item": "Type"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TypeTraitObject",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "dyn_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "dyn",
+ "type": "Dyn"
+ }
+ }
+ }
+ },
+ {
+ "ident": "bounds",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "TypeParamBound"
+ },
+ "punct": {
+ "repr": "+",
+ "type": "Add"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TypeTuple",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "paren_token",
+ "type": {
+ "group": "Paren"
+ }
+ },
+ {
+ "ident": "elems",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "Type"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "TypeVerbatim",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "tts",
+ "type": {
+ "ext": "TokenStream"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "UnOp",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Deref",
+ "fields": [
+ {
+ "token": {
+ "repr": "*",
+ "type": "Star"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "Not",
+ "fields": [
+ {
+ "token": {
+ "repr": "!",
+ "type": "Bang"
+ }
+ }
+ ]
+ },
+ {
+ "ident": "Neg",
+ "fields": [
+ {
+ "token": {
+ "repr": "-",
+ "type": "Sub"
+ }
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "UseGlob",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "star_token",
+ "type": {
+ "token": {
+ "repr": "*",
+ "type": "Star"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "UseGroup",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "brace_token",
+ "type": {
+ "group": "Brace"
+ }
+ },
+ {
+ "ident": "items",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "UseTree"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
+ }
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "UseName",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "UsePath",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "colon2_token",
+ "type": {
+ "token": {
+ "repr": "::",
+ "type": "Colon2"
+ }
+ }
+ },
+ {
+ "ident": "tree",
+ "type": {
+ "box": {
+ "item": "UseTree"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "UseRename",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "as_token",
+ "type": {
+ "token": {
+ "repr": "as",
+ "type": "As"
+ }
+ }
+ },
+ {
+ "ident": "rename",
+ "type": {
+ "item": "Ident"
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "enum",
+ "ident": "UseTree",
+ "features": {
+ "any": [
+ "full"
+ ]
+ },
+ "variants": [
+ {
+ "ident": "Path",
+ "fields": [
+ {
+ "item": "UsePath"
+ }
+ ]
+ },
+ {
+ "ident": "Name",
+ "fields": [
+ {
+ "item": "UseName"
+ }
+ ]
+ },
+ {
+ "ident": "Rename",
+ "fields": [
+ {
+ "item": "UseRename"
+ }
+ ]
+ },
+ {
+ "ident": "Glob",
+ "fields": [
+ {
+ "item": "UseGlob"
+ }
+ ]
+ },
+ {
+ "ident": "Group",
+ "fields": [
+ {
+ "item": "UseGroup"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "node": "struct",
+ "ident": "Variant",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "attrs",
+ "type": {
+ "vec": {
+ "item": "Attribute"
+ }
+ }
+ },
+ {
+ "ident": "ident",
+ "type": {
+ "item": "Ident"
+ }
+ },
+ {
+ "ident": "fields",
+ "type": {
+ "item": "Fields"
+ }
+ },
+ {
+ "ident": "discriminant",
+ "type": {
+ "option": {
+ "tuple": [
+ {
+ "token": {
+ "repr": "=",
+ "type": "Eq"
+ }
+ },
+ {
+ "item": "Expr"
+ }
+ ]
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "VisCrate",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "crate_token",
+ "type": {
+ "token": {
+ "repr": "crate",
+ "type": "Crate"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "VisPublic",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "pub_token",
+ "type": {
+ "token": {
+ "repr": "pub",
+ "type": "Pub"
+ }
+ }
+ }
+ ],
+ "all_fields_pub": true
+ },
+ {
+ "node": "struct",
+ "ident": "VisRestricted",
+ "features": {
+ "any": [
+ "full",
+ "derive"
+ ]
+ },
+ "fields": [
+ {
+ "ident": "pub_token",
+ "type": {
+ "token": {
+ "repr": "pub",
+ "type": "Pub"
+ }
+ }
+ },
+ {
+ "ident": "paren_token",
+ "type": {
+ "group": "Paren"
+ }
+ },
+ {
+ "ident": "in_token",
+ "type": {
+ "option": {
+ "token": {
+ "repr": "in",
+ "type": "In"
+ }
+ }
+ }
+ },
+ {
+ "ident": "path",
+ "type": {
+ "box": {
"item": "Path"
}
}
- ],
- "all_fields_pub": true
- }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "struct": {
- "ident": "TypePtr",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "star_token",
- "ty": {
- "token": {
- "repr": "*",
- "ty": "Star"
- }
- }
- },
- {
- "ident": "const_token",
- "ty": {
- "option": {
- "token": {
- "repr": "const",
- "ty": "Const"
- }
- }
- }
- },
- {
- "ident": "mutability",
- "ty": {
- "option": {
- "token": {
- "repr": "mut",
- "ty": "Mut"
- }
- }
- }
- },
- {
- "ident": "elem",
- "ty": {
- "box": {
- "item": "Type"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "TypeReference",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "and_token",
- "ty": {
- "token": {
- "repr": "&",
- "ty": "And"
- }
- }
- },
- {
- "ident": "lifetime",
- "ty": {
- "option": {
- "item": "Lifetime"
- }
- }
- },
- {
- "ident": "mutability",
- "ty": {
- "option": {
- "token": {
- "repr": "mut",
- "ty": "Mut"
- }
- }
- }
- },
- {
- "ident": "elem",
- "ty": {
- "box": {
- "item": "Type"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "TypeSlice",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "bracket_token",
- "ty": {
- "token_group": "Bracket"
- }
- },
- {
- "ident": "elem",
- "ty": {
- "box": {
- "item": "Type"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "TypeTraitObject",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "dyn_token",
- "ty": {
- "option": {
- "token": {
- "repr": "dyn",
- "ty": "Dyn"
- }
- }
- }
- },
- {
- "ident": "bounds",
- "ty": {
- "punctuated": [
- {
- "item": "TypeParamBound"
- },
- {
- "repr": "+",
- "ty": "Add"
- }
- ]
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "TypeTuple",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "paren_token",
- "ty": {
- "token_group": "Paren"
- }
- },
- {
- "ident": "elems",
- "ty": {
- "punctuated": [
- {
- "item": "Type"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "TypeVerbatim",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "tts",
- "ty": {
- "ext": "TokenStream"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "enum": {
- "ident": "UnOp",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "Deref",
- "fields": [
- {
- "token": {
- "repr": "*",
- "ty": "Star"
- }
- }
- ]
- },
- {
- "ident": "Not",
- "fields": [
- {
- "token": {
- "repr": "!",
- "ty": "Bang"
- }
- }
- ]
- },
- {
- "ident": "Neg",
- "fields": [
- {
- "token": {
- "repr": "-",
- "ty": "Sub"
- }
- }
- ]
- }
+ "node": "enum",
+ "ident": "Visibility",
+ "features": {
+ "any": [
+ "full",
+ "derive"
]
- }
- },
- {
- "struct": {
- "ident": "UseGlob",
- "features": {
- "any": [
- "full"
+ },
+ "variants": [
+ {
+ "ident": "Public",
+ "fields": [
+ {
+ "item": "VisPublic"
+ }
]
},
- "fields": [
- {
- "ident": "star_token",
- "ty": {
- "token": {
- "repr": "*",
- "ty": "Star"
- }
+ {
+ "ident": "Crate",
+ "fields": [
+ {
+ "item": "VisCrate"
}
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "UseGroup",
- "features": {
- "any": [
- "full"
]
},
- "fields": [
- {
- "ident": "brace_token",
- "ty": {
- "token_group": "Brace"
+ {
+ "ident": "Restricted",
+ "fields": [
+ {
+ "item": "VisRestricted"
}
- },
- {
- "ident": "items",
- "ty": {
- "punctuated": [
- {
- "item": "UseTree"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "UseName",
- "features": {
- "any": [
- "full"
]
},
- "fields": [
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- }
- ],
- "all_fields_pub": true
- }
+ {
+ "ident": "Inherited",
+ "fields": []
+ }
+ ]
},
{
- "struct": {
- "ident": "UsePath",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "colon2_token",
- "ty": {
- "token": {
- "repr": "::",
- "ty": "Colon2"
- }
- }
- },
- {
- "ident": "tree",
- "ty": {
- "box": {
- "item": "UseTree"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "UseRename",
- "features": {
- "any": [
- "full"
- ]
- },
- "fields": [
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "as_token",
- "ty": {
- "token": {
- "repr": "as",
- "ty": "As"
- }
- }
- },
- {
- "ident": "rename",
- "ty": {
- "item": "Ident"
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "enum": {
- "ident": "UseTree",
- "features": {
- "any": [
- "full"
- ]
- },
- "variants": [
- {
- "ident": "Path",
- "fields": [
- {
- "item": "UsePath"
- }
- ]
- },
- {
- "ident": "Name",
- "fields": [
- {
- "item": "UseName"
- }
- ]
- },
- {
- "ident": "Rename",
- "fields": [
- {
- "item": "UseRename"
- }
- ]
- },
- {
- "ident": "Glob",
- "fields": [
- {
- "item": "UseGlob"
- }
- ]
- },
- {
- "ident": "Group",
- "fields": [
- {
- "item": "UseGroup"
- }
- ]
- }
+ "node": "struct",
+ "ident": "WhereClause",
+ "features": {
+ "any": [
+ "full",
+ "derive"
]
- }
- },
- {
- "struct": {
- "ident": "Variant",
- "features": {
- "any": [
- "full",
- "derive"
- ]
+ },
+ "fields": [
+ {
+ "ident": "where_token",
+ "type": {
+ "token": {
+ "repr": "where",
+ "type": "Where"
+ }
+ }
},
- "fields": [
- {
- "ident": "attrs",
- "ty": {
- "vec": {
- "item": "Attribute"
- }
- }
- },
- {
- "ident": "ident",
- "ty": {
- "item": "Ident"
- }
- },
- {
- "ident": "fields",
- "ty": {
- "item": "Fields"
- }
- },
- {
- "ident": "discriminant",
- "ty": {
- "option": {
- "tuple": [
- {
- "token": {
- "repr": "=",
- "ty": "Eq"
- }
- },
- {
- "item": "Expr"
- }
- ]
+ {
+ "ident": "predicates",
+ "type": {
+ "punctuated": {
+ "element": {
+ "item": "WherePredicate"
+ },
+ "punct": {
+ "repr": ",",
+ "type": "Comma"
}
}
}
- ],
- "all_fields_pub": true
- }
+ }
+ ],
+ "all_fields_pub": true
},
{
- "struct": {
- "ident": "VisCrate",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "crate_token",
- "ty": {
- "token": {
- "repr": "crate",
- "ty": "Crate"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "VisPublic",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "pub_token",
- "ty": {
- "token": {
- "repr": "pub",
- "ty": "Pub"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "struct": {
- "ident": "VisRestricted",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "fields": [
- {
- "ident": "pub_token",
- "ty": {
- "token": {
- "repr": "pub",
- "ty": "Pub"
- }
- }
- },
- {
- "ident": "paren_token",
- "ty": {
- "token_group": "Paren"
- }
- },
- {
- "ident": "in_token",
- "ty": {
- "option": {
- "token": {
- "repr": "in",
- "ty": "In"
- }
- }
- }
- },
- {
- "ident": "path",
- "ty": {
- "box": {
- "item": "Path"
- }
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "enum": {
- "ident": "Visibility",
- "features": {
- "any": [
- "full",
- "derive"
- ]
- },
- "variants": [
- {
- "ident": "Public",
- "fields": [
- {
- "item": "VisPublic"
- }
- ]
- },
- {
- "ident": "Crate",
- "fields": [
- {
- "item": "VisCrate"
- }
- ]
- },
- {
- "ident": "Restricted",
- "fields": [
- {
- "item": "VisRestricted"
- }
- ]
- },
- {
- "ident": "Inherited",
- "fields": []
- }
+ "node": "enum",
+ "ident": "WherePredicate",
+ "features": {
+ "any": [
+ "full",
+ "derive"
]
- }
- },
- {
- "struct": {
- "ident": "WhereClause",
- "features": {
- "any": [
- "full",
- "derive"
+ },
+ "variants": [
+ {
+ "ident": "Type",
+ "fields": [
+ {
+ "item": "PredicateType"
+ }
]
},
- "fields": [
- {
- "ident": "where_token",
- "ty": {
- "token": {
- "repr": "where",
- "ty": "Where"
- }
+ {
+ "ident": "Lifetime",
+ "fields": [
+ {
+ "item": "PredicateLifetime"
}
- },
- {
- "ident": "predicates",
- "ty": {
- "punctuated": [
- {
- "item": "WherePredicate"
- },
- {
- "repr": ",",
- "ty": "Comma"
- }
- ]
- }
- }
- ],
- "all_fields_pub": true
- }
- },
- {
- "enum": {
- "ident": "WherePredicate",
- "features": {
- "any": [
- "full",
- "derive"
]
},
- "variants": [
- {
- "ident": "Type",
- "fields": [
- {
- "item": "PredicateType"
- }
- ]
- },
- {
- "ident": "Lifetime",
- "fields": [
- {
- "item": "PredicateLifetime"
- }
- ]
- },
- {
- "ident": "Eq",
- "fields": [
- {
- "item": "PredicateEq"
- }
- ]
- }
- ]
- }
+ {
+ "ident": "Eq",
+ "fields": [
+ {
+ "item": "PredicateEq"
+ }
+ ]
+ }
+ ]
}
]
}
\ No newline at end of file