third_party_rust_syn/syn.json

5567 lines
94 KiB
JSON
Raw Normal View History

{
"version": "2.0.48",
"types": [
{
2019-02-15 20:45:33 +00:00
"ident": "Abi",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"extern_token": {
"token": "Extern"
2019-02-15 20:45:33 +00:00
},
"name": {
"option": {
"syn": "LitStr"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "AngleBracketedGenericArguments",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"colon2_token": {
"option": {
"token": "PathSep"
2019-02-15 20:45:33 +00:00
}
},
"lt_token": {
"token": "Lt"
2019-02-15 20:45:33 +00:00
},
"args": {
"punctuated": {
"element": {
"syn": "GenericArgument"
},
"punct": "Comma"
}
2019-02-15 20:45:33 +00:00
},
"gt_token": {
"token": "Gt"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "Arm",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
2019-07-29 04:19:33 +00:00
"pat": {
"syn": "Pat"
2019-02-15 20:45:33 +00:00
},
"guard": {
"option": {
"tuple": [
{
"token": "If"
},
{
"box": {
"syn": "Expr"
}
}
]
2019-02-15 20:45:33 +00:00
}
},
"fat_arrow_token": {
"token": "FatArrow"
2019-02-15 20:45:33 +00:00
},
"body": {
"box": {
"syn": "Expr"
}
},
"comma": {
"option": {
"token": "Comma"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
"ident": "AssocConst",
"features": {
"any": [
"derive",
"full"
]
},
"fields": {
"ident": {
"proc_macro2": "Ident"
},
"generics": {
"option": {
"syn": "AngleBracketedGenericArguments"
}
},
"eq_token": {
"token": "Eq"
},
"value": {
"syn": "Expr"
}
}
},
{
"ident": "AssocType",
"features": {
"any": [
"derive",
"full"
]
},
"fields": {
"ident": {
"proc_macro2": "Ident"
},
"generics": {
"option": {
"syn": "AngleBracketedGenericArguments"
}
},
"eq_token": {
"token": "Eq"
},
"ty": {
"syn": "Type"
}
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "AttrStyle",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"variants": {
"Outer": [],
"Inner": [
{
"token": "Not"
}
]
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "Attribute",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"pound_token": {
"token": "Pound"
2019-02-15 20:45:33 +00:00
},
"style": {
"syn": "AttrStyle"
2019-02-15 20:45:33 +00:00
},
"bracket_token": {
"group": "Bracket"
2019-02-15 20:45:33 +00:00
},
"meta": {
"syn": "Meta"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "BareFnArg",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
2019-07-29 02:18:53 +00:00
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"name": {
"option": {
"tuple": [
{
2019-08-11 23:22:43 +00:00
"proc_macro2": "Ident"
},
{
"token": "Colon"
}
]
}
},
"ty": {
"syn": "Type"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
"ident": "BareVariadic",
"features": {
"any": [
"derive",
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"name": {
"option": {
"tuple": [
{
"proc_macro2": "Ident"
},
{
"token": "Colon"
}
]
}
},
"dots": {
"token": "DotDotDot"
},
"comma": {
"option": {
"token": "Comma"
}
}
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "BinOp",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"variants": {
"Add": [
{
"token": "Plus"
}
],
"Sub": [
{
"token": "Minus"
}
],
"Mul": [
{
"token": "Star"
}
],
"Div": [
{
"token": "Slash"
}
],
"Rem": [
{
"token": "Percent"
}
],
"And": [
{
"token": "AndAnd"
}
],
"Or": [
{
"token": "OrOr"
}
],
"BitXor": [
{
"token": "Caret"
}
],
"BitAnd": [
{
"token": "And"
}
],
"BitOr": [
{
"token": "Or"
}
],
"Shl": [
{
"token": "Shl"
}
],
"Shr": [
{
"token": "Shr"
}
],
"Eq": [
{
"token": "EqEq"
}
],
"Lt": [
{
"token": "Lt"
}
],
"Le": [
{
"token": "Le"
}
],
"Ne": [
{
"token": "Ne"
}
],
"Ge": [
{
"token": "Ge"
}
],
"Gt": [
{
"token": "Gt"
}
],
"AddAssign": [
{
"token": "PlusEq"
}
],
"SubAssign": [
{
"token": "MinusEq"
}
],
"MulAssign": [
{
"token": "StarEq"
}
],
"DivAssign": [
{
"token": "SlashEq"
}
],
"RemAssign": [
{
"token": "PercentEq"
}
],
"BitXorAssign": [
{
"token": "CaretEq"
}
],
"BitAndAssign": [
{
"token": "AndEq"
}
],
"BitOrAssign": [
{
"token": "OrEq"
}
],
"ShlAssign": [
{
"token": "ShlEq"
}
],
"ShrAssign": [
{
"token": "ShrEq"
}
]
2019-02-15 20:45:33 +00:00
},
"exhaustive": false
},
{
2019-02-15 20:45:33 +00:00
"ident": "Block",
"features": {
"any": [
"full"
]
},
"fields": {
"brace_token": {
"group": "Brace"
},
"stmts": {
"vec": {
"syn": "Stmt"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "BoundLifetimes",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"for_token": {
"token": "For"
},
"lt_token": {
"token": "Lt"
2019-02-15 20:45:33 +00:00
},
"lifetimes": {
"punctuated": {
"element": {
"syn": "GenericParam"
},
"punct": "Comma"
2019-02-15 20:45:33 +00:00
}
},
"gt_token": {
"token": "Gt"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ConstParam",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"const_token": {
"token": "Const"
2019-02-15 20:45:33 +00:00
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"colon_token": {
"token": "Colon"
2019-02-15 20:45:33 +00:00
},
"ty": {
"syn": "Type"
2019-02-15 20:45:33 +00:00
},
"eq_token": {
"option": {
"token": "Eq"
2019-02-15 20:45:33 +00:00
}
},
"default": {
"option": {
"syn": "Expr"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "Constraint",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"ident": {
"proc_macro2": "Ident"
},
"generics": {
"option": {
"syn": "AngleBracketedGenericArguments"
}
},
"colon_token": {
"token": "Colon"
2019-02-15 20:45:33 +00:00
},
"bounds": {
"punctuated": {
"element": {
"syn": "TypeParamBound"
},
"punct": "Plus"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "Data",
"features": {
"any": [
"derive"
]
},
"variants": {
"Struct": [
{
"syn": "DataStruct"
}
],
"Enum": [
{
"syn": "DataEnum"
}
],
"Union": [
{
"syn": "DataUnion"
}
]
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "DataEnum",
"features": {
"any": [
"derive"
]
},
"fields": {
"enum_token": {
"token": "Enum"
2019-02-15 20:45:33 +00:00
},
"brace_token": {
"group": "Brace"
},
"variants": {
"punctuated": {
"element": {
"syn": "Variant"
},
"punct": "Comma"
2019-02-15 20:45:33 +00:00
}
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "DataStruct",
"features": {
"any": [
"derive"
]
},
"fields": {
"struct_token": {
"token": "Struct"
2019-02-15 20:45:33 +00:00
},
"fields": {
"syn": "Fields"
2019-02-15 20:45:33 +00:00
},
"semi_token": {
"option": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
}
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "DataUnion",
"features": {
"any": [
"derive"
]
},
"fields": {
"union_token": {
"token": "Union"
2019-02-15 20:45:33 +00:00
},
"fields": {
"syn": "FieldsNamed"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "DeriveInput",
"features": {
"any": [
"derive"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
}
2019-02-15 20:45:33 +00:00
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"generics": {
"syn": "Generics"
2019-02-15 20:45:33 +00:00
},
"data": {
"syn": "Data"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "Expr",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"variants": {
2019-07-28 18:37:05 +00:00
"Array": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprArray"
}
],
2019-07-28 18:37:05 +00:00
"Assign": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprAssign"
}
],
2019-07-28 18:37:05 +00:00
"Async": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprAsync"
}
],
2019-07-28 18:38:49 +00:00
"Await": [
{
"syn": "ExprAwait"
}
],
2019-07-28 18:37:05 +00:00
"Binary": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprBinary"
}
],
2019-07-28 18:37:05 +00:00
"Block": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprBlock"
}
],
2019-07-28 18:37:05 +00:00
"Break": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprBreak"
}
],
2019-07-28 18:37:05 +00:00
"Call": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprCall"
}
],
"Cast": [
{
"syn": "ExprCast"
}
],
2019-07-28 18:37:05 +00:00
"Closure": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprClosure"
}
],
"Const": [
{
"syn": "ExprConst"
}
],
2019-07-28 18:37:05 +00:00
"Continue": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprContinue"
}
],
2019-07-28 18:37:05 +00:00
"Field": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprField"
}
],
2019-07-28 18:37:05 +00:00
"ForLoop": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprForLoop"
}
],
2019-07-28 18:37:05 +00:00
"Group": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprGroup"
}
],
2019-07-28 18:37:05 +00:00
"If": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprIf"
}
],
2019-07-28 18:37:05 +00:00
"Index": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprIndex"
}
],
"Infer": [
{
"syn": "ExprInfer"
}
],
2019-07-28 18:37:05 +00:00
"Let": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprLet"
}
],
2019-07-28 18:37:05 +00:00
"Lit": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprLit"
}
],
2019-07-28 18:37:05 +00:00
"Loop": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprLoop"
}
],
2019-07-28 18:37:05 +00:00
"Macro": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprMacro"
}
],
2019-07-28 18:37:05 +00:00
"Match": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprMatch"
}
],
2019-07-28 18:37:05 +00:00
"MethodCall": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprMethodCall"
}
],
2019-07-28 18:37:05 +00:00
"Paren": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprParen"
}
],
"Path": [
{
"syn": "ExprPath"
}
],
2019-07-28 18:37:05 +00:00
"Range": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprRange"
}
],
2019-07-28 18:37:05 +00:00
"Reference": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprReference"
}
],
2019-07-28 18:37:05 +00:00
"Repeat": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprRepeat"
}
],
"Return": [
{
"syn": "ExprReturn"
}
],
2019-07-28 18:37:05 +00:00
"Struct": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprStruct"
}
],
2019-07-28 18:37:05 +00:00
"Try": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprTry"
}
],
2019-07-28 18:37:05 +00:00
"TryBlock": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprTryBlock"
}
],
2019-07-28 18:37:05 +00:00
"Tuple": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprTuple"
}
],
2019-07-28 18:37:05 +00:00
"Unary": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprUnary"
}
],
2019-07-28 18:37:05 +00:00
"Unsafe": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprUnsafe"
}
],
2019-07-28 18:37:05 +00:00
"Verbatim": [
{
2019-08-03 21:45:32 +00:00
"proc_macro2": "TokenStream"
}
],
2019-07-28 18:37:05 +00:00
"While": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprWhile"
}
],
2019-07-28 18:37:05 +00:00
"Yield": [
{
2019-07-28 18:37:05 +00:00
"syn": "ExprYield"
}
]
2019-08-03 22:38:49 +00:00
},
"exhaustive": false
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprArray",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"bracket_token": {
"group": "Bracket"
},
"elems": {
"punctuated": {
"element": {
"syn": "Expr"
},
"punct": "Comma"
2019-02-15 20:45:33 +00:00
}
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "ExprAssign",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"left": {
"box": {
"syn": "Expr"
2019-02-15 20:45:33 +00:00
}
},
"eq_token": {
"token": "Eq"
2019-02-15 20:45:33 +00:00
},
"right": {
"box": {
"syn": "Expr"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprAsync",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"async_token": {
"token": "Async"
2019-02-15 20:45:33 +00:00
},
"capture": {
"option": {
"token": "Move"
}
2019-02-15 20:45:33 +00:00
},
"block": {
"syn": "Block"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
2019-07-28 18:38:49 +00:00
{
"ident": "ExprAwait",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"base": {
"box": {
"syn": "Expr"
}
},
"dot_token": {
"token": "Dot"
},
"await_token": {
"token": "Await"
}
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprBinary",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"left": {
"box": {
"syn": "Expr"
2019-02-15 20:45:33 +00:00
}
},
"op": {
"syn": "BinOp"
2019-02-15 20:45:33 +00:00
},
"right": {
"box": {
"syn": "Expr"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprBlock",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"label": {
"option": {
"syn": "Label"
2019-02-15 20:45:33 +00:00
}
},
"block": {
"syn": "Block"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprBreak",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"break_token": {
"token": "Break"
2019-02-15 20:45:33 +00:00
},
"label": {
"option": {
"syn": "Lifetime"
2019-02-15 20:45:33 +00:00
}
},
"expr": {
"option": {
"box": {
"syn": "Expr"
}
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprCall",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"func": {
"box": {
"syn": "Expr"
2019-02-15 20:45:33 +00:00
}
},
"paren_token": {
"group": "Paren"
2019-02-15 20:45:33 +00:00
},
"args": {
"punctuated": {
"element": {
"syn": "Expr"
},
"punct": "Comma"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprCast",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"expr": {
"box": {
"syn": "Expr"
2019-02-15 20:45:33 +00:00
}
},
"as_token": {
"token": "As"
2019-02-15 20:45:33 +00:00
},
"ty": {
"box": {
"syn": "Type"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprClosure",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"lifetimes": {
"option": {
"syn": "BoundLifetimes"
}
},
"constness": {
"option": {
"token": "Const"
}
},
"movability": {
"option": {
"token": "Static"
2019-02-15 20:45:33 +00:00
}
},
"asyncness": {
"option": {
"token": "Async"
}
},
"capture": {
"option": {
"token": "Move"
2019-02-15 20:45:33 +00:00
}
},
"or1_token": {
"token": "Or"
2019-02-15 20:45:33 +00:00
},
"inputs": {
"punctuated": {
"element": {
2019-07-29 00:36:26 +00:00
"syn": "Pat"
},
"punct": "Comma"
2019-02-15 20:45:33 +00:00
}
},
"or2_token": {
"token": "Or"
2019-02-15 20:45:33 +00:00
},
"output": {
"syn": "ReturnType"
2019-02-15 20:45:33 +00:00
},
"body": {
"box": {
"syn": "Expr"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
"ident": "ExprConst",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"const_token": {
"token": "Const"
},
"block": {
"syn": "Block"
}
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprContinue",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"continue_token": {
"token": "Continue"
2019-02-15 20:45:33 +00:00
},
"label": {
"option": {
"syn": "Lifetime"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprField",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"base": {
"box": {
"syn": "Expr"
2019-02-15 20:45:33 +00:00
}
},
"dot_token": {
"token": "Dot"
2019-02-15 20:45:33 +00:00
},
"member": {
"syn": "Member"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "ExprForLoop",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"label": {
"option": {
"syn": "Label"
2019-02-15 20:45:33 +00:00
}
},
"for_token": {
"token": "For"
},
2019-07-29 04:19:33 +00:00
"pat": {
"box": {
"syn": "Pat"
}
2019-02-15 20:45:33 +00:00
},
"in_token": {
"token": "In"
2019-02-15 20:45:33 +00:00
},
"expr": {
"box": {
"syn": "Expr"
}
2019-02-15 20:45:33 +00:00
},
"body": {
"syn": "Block"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprGroup",
"features": {
"any": [
"derive",
2019-02-15 20:45:33 +00:00
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"group_token": {
"group": "Group"
2019-02-15 20:45:33 +00:00
},
"expr": {
"box": {
"syn": "Expr"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprIf",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"if_token": {
"token": "If"
2019-02-15 20:45:33 +00:00
},
"cond": {
"box": {
"syn": "Expr"
2019-02-15 20:45:33 +00:00
}
},
"then_branch": {
"syn": "Block"
2019-02-15 20:45:33 +00:00
},
"else_branch": {
"option": {
"tuple": [
{
"token": "Else"
},
{
"box": {
"syn": "Expr"
}
}
]
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprIndex",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"expr": {
"box": {
"syn": "Expr"
2019-02-15 20:45:33 +00:00
}
},
"bracket_token": {
"group": "Bracket"
2019-02-15 20:45:33 +00:00
},
"index": {
"box": {
"syn": "Expr"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
"ident": "ExprInfer",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"underscore_token": {
"token": "Underscore"
}
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprLet",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"let_token": {
"token": "Let"
2019-02-15 20:45:33 +00:00
},
2019-07-29 04:19:33 +00:00
"pat": {
"box": {
"syn": "Pat"
}
2019-02-15 20:45:33 +00:00
},
"eq_token": {
"token": "Eq"
},
"expr": {
"box": {
"syn": "Expr"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprLit",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
}
2019-02-15 20:45:33 +00:00
},
"lit": {
"syn": "Lit"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprLoop",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"label": {
"option": {
"syn": "Label"
2019-02-15 20:45:33 +00:00
}
},
"loop_token": {
"token": "Loop"
2019-02-15 20:45:33 +00:00
},
"body": {
"syn": "Block"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprMacro",
"features": {
"any": [
"derive",
2019-02-15 20:45:33 +00:00
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
}
2019-02-15 20:45:33 +00:00
},
"mac": {
"syn": "Macro"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprMatch",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"match_token": {
"token": "Match"
2019-02-15 20:45:33 +00:00
},
"expr": {
"box": {
"syn": "Expr"
2019-02-15 20:45:33 +00:00
}
},
"brace_token": {
"group": "Brace"
2019-02-15 20:45:33 +00:00
},
"arms": {
"vec": {
"syn": "Arm"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprMethodCall",
"features": {
"any": [
"derive",
2019-02-15 20:45:33 +00:00
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"receiver": {
"box": {
"syn": "Expr"
2019-02-15 20:45:33 +00:00
}
},
"dot_token": {
"token": "Dot"
2019-02-15 20:45:33 +00:00
},
"method": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"turbofish": {
"option": {
"syn": "AngleBracketedGenericArguments"
}
},
"paren_token": {
"group": "Paren"
2019-02-15 20:45:33 +00:00
},
"args": {
"punctuated": {
"element": {
"syn": "Expr"
},
"punct": "Comma"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprParen",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"paren_token": {
"group": "Paren"
2019-02-15 20:45:33 +00:00
},
"expr": {
"box": {
"syn": "Expr"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprPath",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"qself": {
"option": {
"syn": "QSelf"
}
2019-02-15 20:45:33 +00:00
},
"path": {
"syn": "Path"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprRange",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"start": {
"option": {
"box": {
"syn": "Expr"
}
2019-02-15 20:45:33 +00:00
}
},
"limits": {
"syn": "RangeLimits"
2019-02-15 20:45:33 +00:00
},
"end": {
"option": {
"box": {
"syn": "Expr"
}
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprReference",
"features": {
"any": [
"derive",
2019-02-15 20:45:33 +00:00
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"and_token": {
"token": "And"
},
"mutability": {
"option": {
"token": "Mut"
2019-02-15 20:45:33 +00:00
}
},
"expr": {
"box": {
"syn": "Expr"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprRepeat",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"bracket_token": {
"group": "Bracket"
},
"expr": {
"box": {
"syn": "Expr"
2019-02-15 20:45:33 +00:00
}
},
"semi_token": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
},
"len": {
"box": {
"syn": "Expr"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprReturn",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"return_token": {
"token": "Return"
2019-02-15 20:45:33 +00:00
},
"expr": {
"option": {
"box": {
"syn": "Expr"
}
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprStruct",
"features": {
"any": [
"derive",
2019-02-15 20:45:33 +00:00
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"qself": {
"option": {
"syn": "QSelf"
}
},
"path": {
"syn": "Path"
2019-02-15 20:45:33 +00:00
},
"brace_token": {
"group": "Brace"
2019-02-15 20:45:33 +00:00
},
"fields": {
"punctuated": {
"element": {
"syn": "FieldValue"
},
"punct": "Comma"
2019-02-15 20:45:33 +00:00
}
},
"dot2_token": {
"option": {
"token": "DotDot"
2019-02-15 20:45:33 +00:00
}
},
"rest": {
"option": {
"box": {
"syn": "Expr"
}
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprTry",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"expr": {
"box": {
"syn": "Expr"
2019-02-15 20:45:33 +00:00
}
},
"question_token": {
"token": "Question"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprTryBlock",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"try_token": {
"token": "Try"
},
"block": {
"syn": "Block"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprTuple",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"paren_token": {
"group": "Paren"
},
"elems": {
"punctuated": {
"element": {
"syn": "Expr"
},
"punct": "Comma"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
"ident": "ExprUnary",
2019-02-15 20:45:33 +00:00
"features": {
"any": [
"derive",
2019-02-15 20:45:33 +00:00
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"op": {
"syn": "UnOp"
},
"expr": {
"box": {
"syn": "Expr"
}
}
}
},
{
"ident": "ExprUnsafe",
"features": {
2019-02-15 20:45:33 +00:00
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"unsafe_token": {
"token": "Unsafe"
2019-02-15 20:45:33 +00:00
},
"block": {
"syn": "Block"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
2019-02-15 20:45:33 +00:00
{
"ident": "ExprWhile",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"label": {
"option": {
"syn": "Label"
2019-02-15 20:45:33 +00:00
}
},
"while_token": {
"token": "While"
2019-02-15 20:45:33 +00:00
},
"cond": {
"box": {
"syn": "Expr"
}
2019-02-15 20:45:33 +00:00
},
"body": {
"syn": "Block"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ExprYield",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"yield_token": {
"token": "Yield"
2019-02-15 20:45:33 +00:00
},
"expr": {
"option": {
"box": {
"syn": "Expr"
}
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "Field",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
"mutability": {
"syn": "FieldMutability"
},
"ident": {
"option": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
}
},
"colon_token": {
"option": {
"token": "Colon"
2019-02-15 20:45:33 +00:00
}
},
"ty": {
"syn": "Type"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "FieldMutability",
"features": {
"any": [
"derive",
"full"
]
},
"variants": {
"None": []
},
"exhaustive": false
},
2019-02-15 20:45:33 +00:00
{
"ident": "FieldPat",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"member": {
"syn": "Member"
2019-02-15 20:45:33 +00:00
},
"colon_token": {
"option": {
"token": "Colon"
2019-02-15 20:45:33 +00:00
}
},
"pat": {
"box": {
"syn": "Pat"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "FieldValue",
"features": {
"any": [
"derive",
2019-02-15 20:45:33 +00:00
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"member": {
"syn": "Member"
2019-02-15 20:45:33 +00:00
},
"colon_token": {
"option": {
"token": "Colon"
}
2019-02-15 20:45:33 +00:00
},
"expr": {
"syn": "Expr"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "Fields",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"variants": {
"Named": [
{
"syn": "FieldsNamed"
}
],
"Unnamed": [
{
"syn": "FieldsUnnamed"
}
],
"Unit": []
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "FieldsNamed",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"brace_token": {
"group": "Brace"
2019-02-15 20:45:33 +00:00
},
"named": {
"punctuated": {
"element": {
"syn": "Field"
},
"punct": "Comma"
2019-02-15 20:45:33 +00:00
}
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "FieldsUnnamed",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"paren_token": {
"group": "Paren"
2019-02-15 20:45:33 +00:00
},
"unnamed": {
"punctuated": {
"element": {
"syn": "Field"
},
"punct": "Comma"
2019-02-15 20:45:33 +00:00
}
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "File",
"features": {
"any": [
"full"
]
},
"fields": {
"shebang": {
"option": {
"std": "String"
2019-02-15 20:45:33 +00:00
}
},
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"items": {
"vec": {
"syn": "Item"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "FnArg",
"features": {
"any": [
"full"
]
},
"variants": {
2019-07-29 00:13:31 +00:00
"Receiver": [
{
2019-07-29 00:13:31 +00:00
"syn": "Receiver"
}
],
2019-07-29 00:13:31 +00:00
"Typed": [
{
2019-07-29 00:57:30 +00:00
"syn": "PatType"
}
]
}
2019-02-15 20:45:33 +00:00
},
{
2019-02-15 20:45:33 +00:00
"ident": "ForeignItem",
"features": {
"any": [
"full"
]
},
"variants": {
"Fn": [
{
"syn": "ForeignItemFn"
}
],
"Static": [
{
"syn": "ForeignItemStatic"
}
],
"Type": [
{
"syn": "ForeignItemType"
}
],
"Macro": [
{
"syn": "ForeignItemMacro"
}
],
"Verbatim": [
{
2019-08-03 22:14:16 +00:00
"proc_macro2": "TokenStream"
}
]
2019-08-03 22:38:49 +00:00
},
"exhaustive": false
2019-02-15 20:45:33 +00:00
},
{
"ident": "ForeignItemFn",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
2019-07-29 04:39:03 +00:00
"sig": {
"syn": "Signature"
2019-02-15 20:45:33 +00:00
},
"semi_token": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ForeignItemMacro",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"mac": {
"syn": "Macro"
2019-02-15 20:45:33 +00:00
},
"semi_token": {
"option": {
"token": "Semi"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ForeignItemStatic",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
"static_token": {
"token": "Static"
2019-02-15 20:45:33 +00:00
},
"mutability": {
"syn": "StaticMutability"
2019-02-15 20:45:33 +00:00
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"colon_token": {
"token": "Colon"
2019-02-15 20:45:33 +00:00
},
"ty": {
"box": {
"syn": "Type"
2019-02-15 20:45:33 +00:00
}
},
"semi_token": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "ForeignItemType",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
"type_token": {
"token": "Type"
2019-02-15 20:45:33 +00:00
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"generics": {
"syn": "Generics"
},
"semi_token": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
2019-02-15 20:45:33 +00:00
{
"ident": "GenericArgument",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"variants": {
"Lifetime": [
{
"syn": "Lifetime"
}
],
"Type": [
{
"syn": "Type"
}
],
"Const": [
{
"syn": "Expr"
}
],
"AssocType": [
{
"syn": "AssocType"
}
],
"AssocConst": [
{
"syn": "AssocConst"
}
],
"Constraint": [
{
"syn": "Constraint"
}
]
},
"exhaustive": false
2019-02-15 20:45:33 +00:00
},
{
"ident": "GenericParam",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"variants": {
"Lifetime": [
{
"syn": "LifetimeParam"
}
],
"Type": [
{
"syn": "TypeParam"
}
],
"Const": [
{
"syn": "ConstParam"
}
]
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "Generics",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"lt_token": {
"option": {
"token": "Lt"
2019-02-15 20:45:33 +00:00
}
},
"params": {
"punctuated": {
"element": {
"syn": "GenericParam"
},
"punct": "Comma"
2019-02-15 20:45:33 +00:00
}
},
"gt_token": {
"option": {
"token": "Gt"
}
2019-02-15 20:45:33 +00:00
},
"where_clause": {
"option": {
"syn": "WhereClause"
2019-02-15 20:45:33 +00:00
}
}
2019-02-15 22:34:51 +00:00
}
},
2019-02-15 20:45:33 +00:00
{
"ident": "ImplItem",
"features": {
"any": [
"full"
]
},
"variants": {
"Const": [
{
"syn": "ImplItemConst"
}
],
"Fn": [
{
"syn": "ImplItemFn"
}
],
"Type": [
{
"syn": "ImplItemType"
}
],
"Macro": [
{
"syn": "ImplItemMacro"
}
],
"Verbatim": [
{
2019-08-03 22:14:16 +00:00
"proc_macro2": "TokenStream"
}
]
2019-08-03 22:38:49 +00:00
},
"exhaustive": false
2019-02-15 20:45:33 +00:00
},
{
"ident": "ImplItemConst",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
"defaultness": {
"option": {
"token": "Default"
2019-02-15 20:45:33 +00:00
}
},
"const_token": {
"token": "Const"
2019-02-15 20:45:33 +00:00
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"generics": {
"syn": "Generics"
},
"colon_token": {
"token": "Colon"
2019-02-15 20:45:33 +00:00
},
"ty": {
"syn": "Type"
2019-02-15 20:45:33 +00:00
},
"eq_token": {
"token": "Eq"
2019-02-15 20:45:33 +00:00
},
"expr": {
"syn": "Expr"
2019-02-15 20:45:33 +00:00
},
"semi_token": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
"ident": "ImplItemFn",
2019-02-15 20:45:33 +00:00
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
},
"defaultness": {
"option": {
"token": "Default"
2019-02-15 20:45:33 +00:00
}
},
"sig": {
"syn": "Signature"
},
"block": {
"syn": "Block"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "ImplItemMacro",
2019-02-15 20:45:33 +00:00
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"mac": {
"syn": "Macro"
2019-02-15 20:45:33 +00:00
},
"semi_token": {
"option": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
}
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "ImplItemType",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
"defaultness": {
"option": {
"token": "Default"
2019-02-15 20:45:33 +00:00
}
},
"type_token": {
"token": "Type"
2019-02-15 20:45:33 +00:00
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"generics": {
"syn": "Generics"
2019-02-15 20:45:33 +00:00
},
"eq_token": {
"token": "Eq"
2019-02-15 20:45:33 +00:00
},
"ty": {
"syn": "Type"
2019-02-15 20:45:33 +00:00
},
"semi_token": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "ImplRestriction",
"features": {
"any": [
"full"
]
},
"variants": {},
"exhaustive": false
},
2019-02-15 20:45:33 +00:00
{
"ident": "Index",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"index": {
"std": "u32"
},
"span": {
"proc_macro2": "Span"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "Item",
"features": {
"any": [
"full"
]
},
"variants": {
2019-07-28 18:37:05 +00:00
"Const": [
{
2019-07-28 18:37:05 +00:00
"syn": "ItemConst"
}
],
2019-07-28 18:37:05 +00:00
"Enum": [
{
2019-07-28 18:37:05 +00:00
"syn": "ItemEnum"
}
],
2019-07-28 18:37:05 +00:00
"ExternCrate": [
{
2019-07-28 18:37:05 +00:00
"syn": "ItemExternCrate"
}
],
"Fn": [
{
"syn": "ItemFn"
}
],
2019-07-28 18:37:05 +00:00
"ForeignMod": [
{
2019-07-28 18:37:05 +00:00
"syn": "ItemForeignMod"
}
],
2019-07-28 18:37:05 +00:00
"Impl": [
{
2019-07-28 18:37:05 +00:00
"syn": "ItemImpl"
}
],
2019-07-28 18:37:05 +00:00
"Macro": [
{
2019-07-28 18:37:05 +00:00
"syn": "ItemMacro"
}
],
2019-07-28 18:37:05 +00:00
"Mod": [
{
2019-07-28 18:37:05 +00:00
"syn": "ItemMod"
}
],
2019-07-28 18:37:05 +00:00
"Static": [
{
2019-07-28 18:37:05 +00:00
"syn": "ItemStatic"
}
],
2019-07-28 18:37:05 +00:00
"Struct": [
{
2019-07-28 18:37:05 +00:00
"syn": "ItemStruct"
}
],
"Trait": [
{
"syn": "ItemTrait"
}
],
"TraitAlias": [
{
"syn": "ItemTraitAlias"
}
],
2019-07-28 18:37:05 +00:00
"Type": [
{
2019-07-28 18:37:05 +00:00
"syn": "ItemType"
}
],
2019-07-28 18:37:05 +00:00
"Union": [
{
2019-07-28 18:37:05 +00:00
"syn": "ItemUnion"
}
],
2019-07-28 18:37:05 +00:00
"Use": [
{
2019-07-28 18:37:05 +00:00
"syn": "ItemUse"
}
],
"Verbatim": [
{
2019-08-03 22:14:16 +00:00
"proc_macro2": "TokenStream"
}
]
2019-08-03 22:38:49 +00:00
},
"exhaustive": false
2019-02-15 20:45:33 +00:00
},
{
"ident": "ItemConst",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
"const_token": {
"token": "Const"
2019-02-15 20:45:33 +00:00
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"generics": {
"syn": "Generics"
},
"colon_token": {
"token": "Colon"
2019-02-15 20:45:33 +00:00
},
"ty": {
"box": {
"syn": "Type"
2019-02-15 20:45:33 +00:00
}
},
"eq_token": {
"token": "Eq"
2019-02-15 20:45:33 +00:00
},
"expr": {
"box": {
"syn": "Expr"
2019-02-15 20:45:33 +00:00
}
},
"semi_token": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "ItemEnum",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
"enum_token": {
"token": "Enum"
2019-02-15 20:45:33 +00:00
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"generics": {
"syn": "Generics"
2019-02-15 20:45:33 +00:00
},
"brace_token": {
"group": "Brace"
2019-02-15 20:45:33 +00:00
},
"variants": {
"punctuated": {
"element": {
"syn": "Variant"
},
"punct": "Comma"
2019-02-15 20:45:33 +00:00
}
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "ItemExternCrate",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
"extern_token": {
"token": "Extern"
2019-02-15 20:45:33 +00:00
},
"crate_token": {
"token": "Crate"
2019-02-15 20:45:33 +00:00
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"rename": {
"option": {
"tuple": [
{
"token": "As"
},
{
"proc_macro2": "Ident"
}
]
2019-02-15 20:45:33 +00:00
}
},
"semi_token": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "ItemFn",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
2019-07-29 04:39:03 +00:00
"sig": {
"syn": "Signature"
2019-02-15 20:45:33 +00:00
},
"block": {
"box": {
"syn": "Block"
2019-02-15 20:45:33 +00:00
}
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "ItemForeignMod",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"unsafety": {
"option": {
"token": "Unsafe"
}
},
"abi": {
"syn": "Abi"
2019-02-15 20:45:33 +00:00
},
"brace_token": {
"group": "Brace"
2019-02-15 20:45:33 +00:00
},
"items": {
"vec": {
"syn": "ForeignItem"
2019-02-15 20:45:33 +00:00
}
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "ItemImpl",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"defaultness": {
"option": {
"token": "Default"
2019-02-15 20:45:33 +00:00
}
},
"unsafety": {
"option": {
"token": "Unsafe"
2019-02-15 20:45:33 +00:00
}
},
"impl_token": {
"token": "Impl"
2019-02-15 20:45:33 +00:00
},
"generics": {
"syn": "Generics"
2019-02-15 20:45:33 +00:00
},
"trait_": {
"option": {
"tuple": [
{
"option": {
"token": "Not"
}
},
{
"syn": "Path"
},
{
"token": "For"
}
]
2019-02-15 20:45:33 +00:00
}
},
"self_ty": {
"box": {
"syn": "Type"
2019-02-15 20:45:33 +00:00
}
},
"brace_token": {
"group": "Brace"
2019-02-15 20:45:33 +00:00
},
"items": {
"vec": {
"syn": "ImplItem"
2019-02-15 20:45:33 +00:00
}
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "ItemMacro",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"ident": {
"option": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
}
},
"mac": {
"syn": "Macro"
2019-02-15 20:45:33 +00:00
},
"semi_token": {
"option": {
"token": "Semi"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "ItemMod",
2019-02-15 20:45:33 +00:00
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
"unsafety": {
"option": {
"token": "Unsafe"
2019-02-15 20:45:33 +00:00
}
},
"mod_token": {
"token": "Mod"
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"content": {
"option": {
"tuple": [
{
"group": "Brace"
},
{
"vec": {
"syn": "Item"
}
}
]
2019-02-15 20:45:33 +00:00
}
},
"semi": {
"option": {
"token": "Semi"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ItemStatic",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
"static_token": {
"token": "Static"
2019-02-15 20:45:33 +00:00
},
"mutability": {
"syn": "StaticMutability"
2019-02-15 20:45:33 +00:00
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"colon_token": {
"token": "Colon"
2019-02-15 20:45:33 +00:00
},
"ty": {
"box": {
"syn": "Type"
2019-02-15 20:45:33 +00:00
}
},
"eq_token": {
"token": "Eq"
2019-02-15 20:45:33 +00:00
},
"expr": {
"box": {
"syn": "Expr"
2019-02-15 20:45:33 +00:00
}
},
"semi_token": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ItemStruct",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
"struct_token": {
"token": "Struct"
2019-02-15 20:45:33 +00:00
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"generics": {
"syn": "Generics"
2019-02-15 20:45:33 +00:00
},
"fields": {
"syn": "Fields"
2019-02-15 20:45:33 +00:00
},
"semi_token": {
"option": {
"token": "Semi"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ItemTrait",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
"unsafety": {
"option": {
"token": "Unsafe"
2019-02-15 20:45:33 +00:00
}
},
"auto_token": {
"option": {
"token": "Auto"
}
},
"restriction": {
"option": {
"syn": "ImplRestriction"
}
},
"trait_token": {
"token": "Trait"
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"generics": {
"syn": "Generics"
2019-02-15 20:45:33 +00:00
},
"colon_token": {
"option": {
"token": "Colon"
}
},
"supertraits": {
"punctuated": {
"element": {
"syn": "TypeParamBound"
},
"punct": "Plus"
2019-02-15 20:45:33 +00:00
}
},
"brace_token": {
"group": "Brace"
2019-02-15 20:45:33 +00:00
},
"items": {
"vec": {
"syn": "TraitItem"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ItemTraitAlias",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
}
2019-02-15 20:45:33 +00:00
},
"vis": {
"syn": "Visibility"
},
"trait_token": {
"token": "Trait"
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"generics": {
"syn": "Generics"
2019-02-15 20:45:33 +00:00
},
"eq_token": {
"token": "Eq"
},
"bounds": {
"punctuated": {
"element": {
"syn": "TypeParamBound"
},
"punct": "Plus"
}
},
"semi_token": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ItemType",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
"type_token": {
"token": "Type"
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"generics": {
"syn": "Generics"
2019-02-15 20:45:33 +00:00
},
"eq_token": {
"token": "Eq"
},
"ty": {
"box": {
"syn": "Type"
}
},
"semi_token": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ItemUnion",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
"union_token": {
"token": "Union"
2019-02-15 20:45:33 +00:00
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"generics": {
"syn": "Generics"
2019-02-15 20:45:33 +00:00
},
"fields": {
"syn": "FieldsNamed"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "ItemUse",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"vis": {
"syn": "Visibility"
2019-02-15 20:45:33 +00:00
},
"use_token": {
"token": "Use"
2019-02-15 20:45:33 +00:00
},
"leading_colon": {
"option": {
"token": "PathSep"
}
},
"tree": {
"syn": "UseTree"
},
"semi_token": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
2019-02-15 20:45:33 +00:00
{
"ident": "Label",
"features": {
"any": [
"full"
]
},
"fields": {
"name": {
"syn": "Lifetime"
2019-02-15 20:45:33 +00:00
},
"colon_token": {
"token": "Colon"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "Lifetime",
"features": {
"any": []
},
"fields": {
"apostrophe": {
"proc_macro2": "Span"
2019-02-15 20:45:33 +00:00
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "LifetimeParam",
2019-02-15 20:45:33 +00:00
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"lifetime": {
"syn": "Lifetime"
2019-02-15 20:45:33 +00:00
},
"colon_token": {
"option": {
"token": "Colon"
2019-02-15 20:45:33 +00:00
}
},
"bounds": {
"punctuated": {
"element": {
"syn": "Lifetime"
},
"punct": "Plus"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "Lit",
"features": {
"any": []
2019-02-15 20:45:33 +00:00
},
"variants": {
"Str": [
{
"syn": "LitStr"
}
],
"ByteStr": [
{
"syn": "LitByteStr"
}
],
"Byte": [
{
"syn": "LitByte"
}
],
"Char": [
{
"syn": "LitChar"
}
],
"Int": [
{
"syn": "LitInt"
}
],
"Float": [
{
"syn": "LitFloat"
}
],
"Bool": [
{
"syn": "LitBool"
}
],
"Verbatim": [
{
2019-07-29 14:07:53 +00:00
"proc_macro2": "Literal"
}
]
},
"exhaustive": false
},
{
2019-02-15 20:45:33 +00:00
"ident": "LitBool",
"features": {
"any": []
2019-02-15 20:45:33 +00:00
},
"fields": {
"value": {
"std": "bool"
2019-02-15 20:45:33 +00:00
},
"span": {
"proc_macro2": "Span"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "LitByte",
"features": {
"any": []
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "LitByteStr",
"features": {
"any": []
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "LitChar",
"features": {
"any": []
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "LitFloat",
"features": {
"any": []
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "LitInt",
"features": {
"any": []
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "LitStr",
"features": {
"any": []
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "Local",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"let_token": {
"token": "Let"
2019-02-15 20:45:33 +00:00
},
2019-07-29 04:19:33 +00:00
"pat": {
"syn": "Pat"
2019-02-15 20:45:33 +00:00
},
"init": {
"option": {
"syn": "LocalInit"
}
},
"semi_token": {
"token": "Semi"
}
}
},
{
"ident": "LocalInit",
"features": {
"any": [
"full"
]
},
"fields": {
"eq_token": {
"token": "Eq"
},
"expr": {
"box": {
"syn": "Expr"
}
},
"diverge": {
"option": {
"tuple": [
{
"token": "Else"
},
{
"box": {
"syn": "Expr"
}
}
]
2019-02-15 20:45:33 +00:00
}
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "Macro",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"path": {
"syn": "Path"
},
"bang_token": {
"token": "Not"
2019-02-15 20:45:33 +00:00
},
"delimiter": {
"syn": "MacroDelimiter"
2019-02-15 20:45:33 +00:00
},
2019-07-28 16:01:53 +00:00
"tokens": {
"proc_macro2": "TokenStream"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "MacroDelimiter",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"variants": {
"Paren": [
{
"group": "Paren"
}
],
"Brace": [
{
"group": "Brace"
}
],
"Bracket": [
{
"group": "Bracket"
}
]
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "Member",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"variants": {
"Named": [
{
"proc_macro2": "Ident"
}
],
"Unnamed": [
{
"syn": "Index"
}
]
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "Meta",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"variants": {
2019-07-28 22:48:22 +00:00
"Path": [
{
2019-07-28 22:48:22 +00:00
"syn": "Path"
}
],
"List": [
{
"syn": "MetaList"
}
],
"NameValue": [
{
"syn": "MetaNameValue"
}
]
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "MetaList",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
2019-07-28 22:48:22 +00:00
"path": {
"syn": "Path"
2019-02-15 20:45:33 +00:00
},
"delimiter": {
"syn": "MacroDelimiter"
2019-02-15 20:45:33 +00:00
},
"tokens": {
"proc_macro2": "TokenStream"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "MetaNameValue",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
2019-07-28 22:48:22 +00:00
"path": {
"syn": "Path"
2019-02-15 20:45:33 +00:00
},
"eq_token": {
"token": "Eq"
},
"value": {
"syn": "Expr"
}
}
},
{
"ident": "ParenthesizedGenericArguments",
"features": {
"any": [
"derive",
"full"
]
},
"fields": {
"paren_token": {
"group": "Paren"
},
"inputs": {
"punctuated": {
"element": {
"syn": "Type"
},
"punct": "Comma"
}
},
"output": {
"syn": "ReturnType"
}
}
},
{
"ident": "Pat",
"features": {
"any": [
"full"
]
},
"variants": {
"Const": [
{
"syn": "ExprConst"
}
],
"Ident": [
{
"syn": "PatIdent"
}
],
"Lit": [
{
"syn": "ExprLit"
}
],
"Macro": [
{
"syn": "ExprMacro"
}
],
"Or": [
{
"syn": "PatOr"
}
],
"Paren": [
{
"syn": "PatParen"
}
],
"Path": [
{
"syn": "ExprPath"
}
],
2019-07-28 22:27:11 +00:00
"Range": [
{
"syn": "ExprRange"
}
],
"Reference": [
{
"syn": "PatReference"
}
],
2019-07-29 03:11:04 +00:00
"Rest": [
{
"syn": "PatRest"
}
],
2019-07-28 22:27:11 +00:00
"Slice": [
{
2019-07-28 22:27:11 +00:00
"syn": "PatSlice"
}
],
2019-07-28 22:27:11 +00:00
"Struct": [
{
2019-07-28 22:27:11 +00:00
"syn": "PatStruct"
}
],
2019-07-28 22:27:11 +00:00
"Tuple": [
{
2019-07-28 22:27:11 +00:00
"syn": "PatTuple"
}
],
2019-07-28 22:27:11 +00:00
"TupleStruct": [
{
2019-07-28 22:27:11 +00:00
"syn": "PatTupleStruct"
}
],
2019-07-29 00:32:35 +00:00
"Type": [
{
"syn": "PatType"
}
],
"Verbatim": [
{
2019-08-03 21:46:06 +00:00
"proc_macro2": "TokenStream"
}
2019-07-28 22:27:11 +00:00
],
"Wild": [
{
"syn": "PatWild"
}
]
2019-08-03 22:38:49 +00:00
},
"exhaustive": false
},
{
2019-02-15 20:45:33 +00:00
"ident": "PatIdent",
"features": {
"any": [
"full"
]
},
"fields": {
2019-07-29 00:21:10 +00:00
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"by_ref": {
"option": {
"token": "Ref"
}
},
"mutability": {
"option": {
"token": "Mut"
2019-02-15 20:45:33 +00:00
}
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"subpat": {
"option": {
"tuple": [
{
"token": "At"
},
{
"box": {
"syn": "Pat"
}
}
]
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
2019-07-29 04:19:33 +00:00
{
"ident": "PatOr",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"leading_vert": {
"option": {
"token": "Or"
}
},
"cases": {
"punctuated": {
"element": {
"syn": "Pat"
},
"punct": "Or"
}
}
}
},
2019-02-15 20:45:33 +00:00
{
"ident": "PatParen",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"paren_token": {
"group": "Paren"
},
"pat": {
"box": {
"syn": "Pat"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
"ident": "PatReference",
2019-02-15 20:45:33 +00:00
"features": {
"any": [
"full"
]
},
"fields": {
2019-07-29 00:21:10 +00:00
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"and_token": {
"token": "And"
2019-02-15 20:45:33 +00:00
},
"mutability": {
"option": {
"token": "Mut"
2019-02-15 20:45:33 +00:00
}
},
"pat": {
"box": {
"syn": "Pat"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-07-29 03:11:04 +00:00
"ident": "PatRest",
2019-02-15 20:45:33 +00:00
"features": {
"any": [
"full"
]
},
"fields": {
2019-07-29 00:21:10 +00:00
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"dot2_token": {
"token": "DotDot"
2019-07-29 03:11:04 +00:00
}
}
},
{
"ident": "PatSlice",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
}
},
2019-07-29 03:11:04 +00:00
"bracket_token": {
"group": "Bracket"
2019-02-15 20:45:33 +00:00
},
2019-07-29 03:11:04 +00:00
"elems": {
"punctuated": {
"element": {
"syn": "Pat"
},
"punct": "Comma"
2019-02-15 20:45:33 +00:00
}
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "PatStruct",
"features": {
"any": [
"full"
]
},
"fields": {
2019-07-29 00:21:10 +00:00
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"qself": {
"option": {
"syn": "QSelf"
}
},
"path": {
"syn": "Path"
2019-02-15 20:45:33 +00:00
},
"brace_token": {
"group": "Brace"
2019-02-15 20:45:33 +00:00
},
"fields": {
"punctuated": {
"element": {
"syn": "FieldPat"
},
"punct": "Comma"
2019-02-15 20:45:33 +00:00
}
},
"rest": {
"option": {
"syn": "PatRest"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "PatTuple",
"features": {
"any": [
"full"
]
},
"fields": {
2019-07-29 00:21:10 +00:00
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"paren_token": {
"group": "Paren"
2019-02-15 20:45:33 +00:00
},
2019-07-29 03:11:04 +00:00
"elems": {
"punctuated": {
"element": {
"syn": "Pat"
},
"punct": "Comma"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "PatTupleStruct",
"features": {
"any": [
"full"
]
},
"fields": {
2019-07-29 00:21:10 +00:00
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"qself": {
"option": {
"syn": "QSelf"
}
},
"path": {
"syn": "Path"
},
"paren_token": {
"group": "Paren"
},
"elems": {
"punctuated": {
"element": {
"syn": "Pat"
},
"punct": "Comma"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
2019-07-29 00:32:35 +00:00
{
"ident": "PatType",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"pat": {
"box": {
"syn": "Pat"
}
},
"colon_token": {
"token": "Colon"
},
"ty": {
2019-07-29 00:45:00 +00:00
"box": {
"syn": "Type"
}
2019-07-29 00:32:35 +00:00
}
}
},
2019-02-15 20:45:33 +00:00
{
"ident": "PatWild",
"features": {
"any": [
"full"
]
},
"fields": {
2019-07-29 00:21:10 +00:00
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"underscore_token": {
"token": "Underscore"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "Path",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"leading_colon": {
"option": {
"token": "PathSep"
2019-02-15 20:45:33 +00:00
}
},
"segments": {
"punctuated": {
"element": {
"syn": "PathSegment"
},
"punct": "PathSep"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "PathArguments",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"variants": {
"None": [],
"AngleBracketed": [
{
"syn": "AngleBracketedGenericArguments"
}
],
"Parenthesized": [
{
"syn": "ParenthesizedGenericArguments"
}
]
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "PathSegment",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"arguments": {
"syn": "PathArguments"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
2019-02-15 20:45:33 +00:00
"ident": "PredicateLifetime",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"lifetime": {
"syn": "Lifetime"
},
"colon_token": {
"token": "Colon"
2019-02-15 20:45:33 +00:00
},
"bounds": {
"punctuated": {
"element": {
"syn": "Lifetime"
},
"punct": "Plus"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "PredicateType",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"lifetimes": {
"option": {
"syn": "BoundLifetimes"
2019-02-15 20:45:33 +00:00
}
},
"bounded_ty": {
"syn": "Type"
2019-02-15 20:45:33 +00:00
},
"colon_token": {
"token": "Colon"
2019-02-15 20:45:33 +00:00
},
"bounds": {
"punctuated": {
"element": {
"syn": "TypeParamBound"
},
"punct": "Plus"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "QSelf",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"lt_token": {
"token": "Lt"
2019-02-15 20:45:33 +00:00
},
"ty": {
"box": {
"syn": "Type"
2019-02-15 20:45:33 +00:00
}
},
"position": {
"std": "usize"
},
"as_token": {
"option": {
"token": "As"
2019-02-15 20:45:33 +00:00
}
},
"gt_token": {
"token": "Gt"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "RangeLimits",
"features": {
"any": [
"full"
]
},
"variants": {
"HalfOpen": [
{
"token": "DotDot"
}
],
"Closed": [
{
"token": "DotDotEq"
}
]
}
2019-02-15 20:45:33 +00:00
},
2019-07-29 00:13:31 +00:00
{
"ident": "Receiver",
"features": {
"any": [
"full"
]
},
"fields": {
2019-07-29 01:44:57 +00:00
"attrs": {
"vec": {
"syn": "Attribute"
}
},
2019-07-29 00:13:31 +00:00
"reference": {
"option": {
"tuple": [
{
"token": "And"
},
{
"option": {
"syn": "Lifetime"
}
}
]
}
},
"mutability": {
"option": {
"token": "Mut"
}
},
"self_token": {
"token": "SelfValue"
},
"colon_token": {
"option": {
"token": "Colon"
}
},
"ty": {
"box": {
"syn": "Type"
}
2019-07-29 00:13:31 +00:00
}
}
},
2019-02-15 20:45:33 +00:00
{
"ident": "ReturnType",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"variants": {
"Default": [],
"Type": [
{
"token": "RArrow"
},
{
"box": {
"syn": "Type"
}
}
]
}
2019-02-15 20:45:33 +00:00
},
2019-07-29 04:39:03 +00:00
{
"ident": "Signature",
"features": {
"any": [
"full"
]
},
"fields": {
"constness": {
"option": {
"token": "Const"
}
},
"asyncness": {
"option": {
"token": "Async"
}
},
"unsafety": {
"option": {
"token": "Unsafe"
}
},
"abi": {
"option": {
"syn": "Abi"
}
},
"fn_token": {
"token": "Fn"
},
"ident": {
"proc_macro2": "Ident"
},
"generics": {
"syn": "Generics"
},
"paren_token": {
"group": "Paren"
},
"inputs": {
"punctuated": {
"element": {
"syn": "FnArg"
},
"punct": "Comma"
}
},
"variadic": {
"option": {
"syn": "Variadic"
}
},
"output": {
"syn": "ReturnType"
}
}
},
{
"ident": "StaticMutability",
"features": {
"any": [
"full"
]
},
"variants": {
"Mut": [
{
"token": "Mut"
}
],
"None": []
},
"exhaustive": false
},
2019-02-15 20:45:33 +00:00
{
"ident": "Stmt",
"features": {
"any": [
"full"
]
},
"variants": {
"Local": [
{
"syn": "Local"
}
],
"Item": [
{
"syn": "Item"
}
],
"Expr": [
{
"syn": "Expr"
},
{
"option": {
"token": "Semi"
}
}
],
"Macro": [
{
"syn": "StmtMacro"
}
]
}
},
{
"ident": "StmtMacro",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"mac": {
"syn": "Macro"
},
"semi_token": {
"option": {
"token": "Semi"
}
}
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "TraitBound",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"paren_token": {
"option": {
"group": "Paren"
2019-02-15 20:45:33 +00:00
}
},
"modifier": {
"syn": "TraitBoundModifier"
2019-02-15 20:45:33 +00:00
},
"lifetimes": {
"option": {
"syn": "BoundLifetimes"
2019-02-15 20:45:33 +00:00
}
},
"path": {
"syn": "Path"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "TraitBoundModifier",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"variants": {
"None": [],
"Maybe": [
{
"token": "Question"
}
]
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "TraitItem",
"features": {
"any": [
"full"
]
},
"variants": {
"Const": [
{
"syn": "TraitItemConst"
}
],
"Fn": [
{
"syn": "TraitItemFn"
}
],
"Type": [
{
"syn": "TraitItemType"
}
],
"Macro": [
{
"syn": "TraitItemMacro"
}
],
"Verbatim": [
{
2019-08-03 22:14:16 +00:00
"proc_macro2": "TokenStream"
}
]
2019-08-03 22:38:49 +00:00
},
"exhaustive": false
2019-02-15 20:45:33 +00:00
},
{
"ident": "TraitItemConst",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"const_token": {
"token": "Const"
2019-02-15 20:45:33 +00:00
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"generics": {
"syn": "Generics"
},
"colon_token": {
"token": "Colon"
2019-02-15 20:45:33 +00:00
},
"ty": {
"syn": "Type"
2019-02-15 20:45:33 +00:00
},
"default": {
"option": {
"tuple": [
{
"token": "Eq"
},
{
"syn": "Expr"
}
]
2019-02-15 20:45:33 +00:00
}
},
"semi_token": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "TraitItemFn",
2019-02-15 20:45:33 +00:00
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"sig": {
"syn": "Signature"
},
"default": {
"option": {
"syn": "Block"
}
2019-02-15 20:45:33 +00:00
},
"semi_token": {
"option": {
"token": "Semi"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
"ident": "TraitItemMacro",
2019-02-15 20:45:33 +00:00
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"mac": {
"syn": "Macro"
2019-02-15 20:45:33 +00:00
},
"semi_token": {
"option": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
}
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "TraitItemType",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"type_token": {
"token": "Type"
2019-02-15 20:45:33 +00:00
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"generics": {
"syn": "Generics"
2019-02-15 20:45:33 +00:00
},
"colon_token": {
"option": {
"token": "Colon"
2019-02-15 20:45:33 +00:00
}
},
"bounds": {
"punctuated": {
"element": {
"syn": "TypeParamBound"
},
"punct": "Plus"
2019-02-15 20:45:33 +00:00
}
},
"default": {
"option": {
"tuple": [
{
"token": "Eq"
},
{
"syn": "Type"
}
]
2019-02-15 20:45:33 +00:00
}
},
"semi_token": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
2019-02-15 20:45:33 +00:00
{
"ident": "Type",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"variants": {
2019-07-28 18:37:05 +00:00
"Array": [
{
2019-07-28 18:37:05 +00:00
"syn": "TypeArray"
}
],
2019-07-28 18:37:05 +00:00
"BareFn": [
{
2019-07-28 18:37:05 +00:00
"syn": "TypeBareFn"
}
],
2019-07-28 18:37:05 +00:00
"Group": [
{
2019-07-28 18:37:05 +00:00
"syn": "TypeGroup"
}
],
2019-07-28 18:37:05 +00:00
"ImplTrait": [
{
2019-07-28 18:37:05 +00:00
"syn": "TypeImplTrait"
}
],
2019-07-28 18:37:05 +00:00
"Infer": [
{
2019-07-28 18:37:05 +00:00
"syn": "TypeInfer"
}
],
"Macro": [
{
"syn": "TypeMacro"
}
],
"Never": [
{
"syn": "TypeNever"
}
],
2019-07-28 18:37:05 +00:00
"Paren": [
{
2019-07-28 18:37:05 +00:00
"syn": "TypeParen"
}
],
"Path": [
{
"syn": "TypePath"
}
],
2019-07-28 18:37:05 +00:00
"Ptr": [
{
2019-07-28 18:37:05 +00:00
"syn": "TypePtr"
}
],
2019-07-28 18:37:05 +00:00
"Reference": [
{
2019-07-28 18:37:05 +00:00
"syn": "TypeReference"
}
],
2019-07-28 18:37:05 +00:00
"Slice": [
{
2019-07-28 18:37:05 +00:00
"syn": "TypeSlice"
}
],
2019-07-28 18:37:05 +00:00
"TraitObject": [
{
2019-07-28 18:37:05 +00:00
"syn": "TypeTraitObject"
}
],
2019-07-28 18:37:05 +00:00
"Tuple": [
{
2019-07-28 18:37:05 +00:00
"syn": "TypeTuple"
}
],
"Verbatim": [
{
2019-08-03 21:58:20 +00:00
"proc_macro2": "TokenStream"
}
]
2019-08-03 22:38:49 +00:00
},
"exhaustive": false
},
{
2019-02-15 20:45:33 +00:00
"ident": "TypeArray",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"bracket_token": {
"group": "Bracket"
2019-02-15 20:45:33 +00:00
},
"elem": {
"box": {
"syn": "Type"
2019-02-15 20:45:33 +00:00
}
},
"semi_token": {
"token": "Semi"
2019-02-15 20:45:33 +00:00
},
"len": {
"syn": "Expr"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "TypeBareFn",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"lifetimes": {
"option": {
"syn": "BoundLifetimes"
2019-02-15 20:45:33 +00:00
}
},
"unsafety": {
"option": {
"token": "Unsafe"
}
},
"abi": {
"option": {
"syn": "Abi"
2019-02-15 20:45:33 +00:00
}
},
"fn_token": {
"token": "Fn"
2019-02-15 20:45:33 +00:00
},
"paren_token": {
"group": "Paren"
2019-02-15 20:45:33 +00:00
},
"inputs": {
"punctuated": {
"element": {
"syn": "BareFnArg"
},
"punct": "Comma"
2019-02-15 20:45:33 +00:00
}
},
"variadic": {
"option": {
"syn": "BareVariadic"
2019-02-15 20:45:33 +00:00
}
},
"output": {
"syn": "ReturnType"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "TypeGroup",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"group_token": {
"group": "Group"
2019-02-15 20:45:33 +00:00
},
"elem": {
"box": {
"syn": "Type"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "TypeImplTrait",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"impl_token": {
"token": "Impl"
2019-02-15 20:45:33 +00:00
},
"bounds": {
"punctuated": {
"element": {
"syn": "TypeParamBound"
},
"punct": "Plus"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "TypeInfer",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"underscore_token": {
"token": "Underscore"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "TypeMacro",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"mac": {
"syn": "Macro"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "TypeNever",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"bang_token": {
"token": "Not"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "TypeParam",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"colon_token": {
"option": {
"token": "Colon"
}
},
"bounds": {
"punctuated": {
"element": {
"syn": "TypeParamBound"
},
"punct": "Plus"
}
},
"eq_token": {
"option": {
"token": "Eq"
2019-02-15 20:45:33 +00:00
}
},
"default": {
"option": {
"syn": "Type"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "TypeParamBound",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"variants": {
"Trait": [
{
"syn": "TraitBound"
}
],
"Lifetime": [
{
"syn": "Lifetime"
}
],
"Verbatim": [
{
"proc_macro2": "TokenStream"
}
]
},
"exhaustive": false
2019-02-15 20:45:33 +00:00
},
{
"ident": "TypeParen",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"paren_token": {
"group": "Paren"
2019-02-15 20:45:33 +00:00
},
"elem": {
"box": {
"syn": "Type"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "TypePath",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"qself": {
"option": {
"syn": "QSelf"
2019-02-15 20:45:33 +00:00
}
},
"path": {
"syn": "Path"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "TypePtr",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"star_token": {
"token": "Star"
2019-02-15 20:45:33 +00:00
},
"const_token": {
"option": {
"token": "Const"
}
},
"mutability": {
"option": {
"token": "Mut"
2019-02-15 20:45:33 +00:00
}
},
"elem": {
"box": {
"syn": "Type"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "TypeReference",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"and_token": {
"token": "And"
},
"lifetime": {
"option": {
"syn": "Lifetime"
2019-02-15 20:45:33 +00:00
}
},
"mutability": {
"option": {
"token": "Mut"
}
},
"elem": {
"box": {
"syn": "Type"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "TypeSlice",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
]
2019-02-15 20:45:33 +00:00
},
"fields": {
"bracket_token": {
"group": "Bracket"
2019-02-15 20:45:33 +00:00
},
"elem": {
"box": {
"syn": "Type"
2019-02-15 20:45:33 +00:00
}
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "TypeTraitObject",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"dyn_token": {
"option": {
"token": "Dyn"
}
},
"bounds": {
"punctuated": {
"element": {
"syn": "TypeParamBound"
},
"punct": "Plus"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "TypeTuple",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"paren_token": {
"group": "Paren"
2019-02-15 20:45:33 +00:00
},
"elems": {
"punctuated": {
"element": {
"syn": "Type"
},
"punct": "Comma"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
2019-02-15 20:45:33 +00:00
{
"ident": "UnOp",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"variants": {
"Deref": [
{
"token": "Star"
}
],
"Not": [
{
"token": "Not"
}
],
"Neg": [
{
"token": "Minus"
}
]
},
"exhaustive": false
2019-02-15 20:45:33 +00:00
},
{
"ident": "UseGlob",
"features": {
"any": [
"full"
]
},
"fields": {
"star_token": {
"token": "Star"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "UseGroup",
"features": {
"any": [
"full"
]
},
"fields": {
"brace_token": {
"group": "Brace"
2019-02-15 20:45:33 +00:00
},
"items": {
"punctuated": {
"element": {
"syn": "UseTree"
},
"punct": "Comma"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "UseName",
"features": {
"any": [
"full"
]
},
"fields": {
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "UsePath",
"features": {
"any": [
"full"
]
},
"fields": {
"ident": {
"proc_macro2": "Ident"
},
"colon2_token": {
"token": "PathSep"
2019-02-15 20:45:33 +00:00
},
"tree": {
"box": {
"syn": "UseTree"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "UseRename",
"features": {
"any": [
"full"
]
},
"fields": {
"ident": {
"proc_macro2": "Ident"
},
"as_token": {
"token": "As"
2019-02-15 20:45:33 +00:00
},
"rename": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "UseTree",
"features": {
"any": [
"full"
]
},
"variants": {
"Path": [
{
"syn": "UsePath"
}
],
"Name": [
{
"syn": "UseName"
}
],
"Rename": [
{
"syn": "UseRename"
}
],
"Glob": [
{
"syn": "UseGlob"
}
],
"Group": [
{
"syn": "UseGroup"
}
]
}
},
2019-07-29 02:10:39 +00:00
{
"ident": "Variadic",
"features": {
"any": [
"full"
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
}
},
"pat": {
"option": {
"tuple": [
{
"box": {
"syn": "Pat"
}
},
{
"token": "Colon"
}
]
}
},
2019-07-29 02:10:39 +00:00
"dots": {
"token": "DotDotDot"
},
"comma": {
"option": {
"token": "Comma"
}
2019-07-29 02:10:39 +00:00
}
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "Variant",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"attrs": {
"vec": {
"syn": "Attribute"
2019-02-15 20:45:33 +00:00
}
},
"ident": {
"proc_macro2": "Ident"
2019-02-15 20:45:33 +00:00
},
"fields": {
"syn": "Fields"
2019-02-15 20:45:33 +00:00
},
"discriminant": {
"option": {
"tuple": [
{
"token": "Eq"
},
{
"syn": "Expr"
}
]
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
2019-02-15 20:45:33 +00:00
{
"ident": "VisRestricted",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"pub_token": {
"token": "Pub"
2019-02-15 20:45:33 +00:00
},
"paren_token": {
"group": "Paren"
},
"in_token": {
"option": {
"token": "In"
2019-02-15 20:45:33 +00:00
}
},
"path": {
"box": {
"syn": "Path"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "Visibility",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"variants": {
"Public": [
{
"token": "Pub"
}
],
"Restricted": [
{
"syn": "VisRestricted"
}
],
"Inherited": []
}
2019-02-15 20:45:33 +00:00
},
{
"ident": "WhereClause",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"fields": {
"where_token": {
"token": "Where"
2019-02-15 20:45:33 +00:00
},
"predicates": {
"punctuated": {
"element": {
"syn": "WherePredicate"
},
"punct": "Comma"
}
2019-02-15 20:45:33 +00:00
}
2019-02-15 22:34:51 +00:00
}
},
{
2019-02-15 20:45:33 +00:00
"ident": "WherePredicate",
"features": {
"any": [
2019-02-16 04:23:14 +00:00
"derive",
"full"
2019-02-15 20:45:33 +00:00
]
},
"variants": {
"Lifetime": [
{
"syn": "PredicateLifetime"
}
],
"Type": [
{
"syn": "PredicateType"
}
]
},
"exhaustive": false
}
2019-02-15 21:10:14 +00:00
],
"tokens": {
"Abstract": "abstract",
"And": "&",
"AndAnd": "&&",
"AndEq": "&=",
"As": "as",
"Async": "async",
"At": "@",
"Auto": "auto",
2019-07-28 18:32:38 +00:00
"Await": "await",
2019-02-15 21:10:14 +00:00
"Become": "become",
"Box": "box",
"Break": "break",
"Caret": "^",
"CaretEq": "^=",
"Colon": ":",
"Comma": ",",
"Const": "const",
"Continue": "continue",
"Crate": "crate",
"Default": "default",
"Do": "do",
"Dollar": "$",
2019-02-15 21:10:14 +00:00
"Dot": ".",
"DotDot": "..",
"DotDotDot": "...",
2019-02-15 21:10:14 +00:00
"DotDotEq": "..=",
"Dyn": "dyn",
"Else": "else",
"Enum": "enum",
"Eq": "=",
"EqEq": "==",
"Extern": "extern",
"FatArrow": "=>",
"Final": "final",
"Fn": "fn",
"For": "for",
"Ge": ">=",
"Gt": ">",
"If": "if",
"Impl": "impl",
"In": "in",
"LArrow": "<-",
"Le": "<=",
"Let": "let",
"Loop": "loop",
"Lt": "<",
"Macro": "macro",
"Match": "match",
"Minus": "-",
"MinusEq": "-=",
2019-02-15 21:10:14 +00:00
"Mod": "mod",
"Move": "move",
"Mut": "mut",
"Ne": "!=",
"Not": "!",
2019-02-15 21:10:14 +00:00
"Or": "|",
"OrEq": "|=",
"OrOr": "||",
"Override": "override",
"PathSep": "::",
"Percent": "%",
"PercentEq": "%=",
"Plus": "+",
"PlusEq": "+=",
2019-02-15 21:10:14 +00:00
"Pound": "#",
"Priv": "priv",
"Pub": "pub",
"Question": "?",
"RArrow": "->",
"Ref": "ref",
"Return": "return",
"SelfType": "Self",
"SelfValue": "self",
"Semi": ";",
"Shl": "<<",
"ShlEq": "<<=",
"Shr": ">>",
"ShrEq": ">>=",
"Slash": "/",
"SlashEq": "/=",
2019-02-15 21:10:14 +00:00
"Star": "*",
"StarEq": "*=",
2019-02-15 21:10:14 +00:00
"Static": "static",
"Struct": "struct",
"Super": "super",
"Tilde": "~",
"Trait": "trait",
"Try": "try",
"Type": "type",
"Typeof": "typeof",
"Underscore": "_",
"Union": "union",
"Unsafe": "unsafe",
"Unsized": "unsized",
"Use": "use",
"Virtual": "virtual",
"Where": "where",
"While": "while",
"Yield": "yield"
}
}