Files
codeql/rust/schema/ast.py
2024-12-02 10:13:05 +01:00

718 lines
18 KiB
Python
Generated

# Generated by `ast-generator`, do not edit by hand.
from .prelude import *
class AssocItem(AstNode):
pass
class Expr(AstNode):
pass
class ExternItem(AstNode):
pass
class FieldList(AstNode):
pass
class GenericArg(AstNode):
pass
class GenericParam(AstNode):
pass
class Pat(AstNode):
pass
class Stmt(AstNode):
pass
class TypeRef(AstNode):
pass
class Item(Stmt):
pass
class Abi(AstNode):
abi_string: optional[string]
class ArgList(AstNode):
args: list["Expr"] | child
class ArrayExpr(Expr):
attrs: list["Attr"] | child
exprs: list["Expr"] | child
class ArrayTypeRef(TypeRef):
const_arg: optional["ConstArg"] | child
ty: optional["TypeRef"] | child
class AsmExpr(Expr):
attrs: list["Attr"] | child
expr: optional["Expr"] | child
class AssocItemList(AstNode):
assoc_items: list["AssocItem"] | child
attrs: list["Attr"] | child
class AssocTypeArg(GenericArg):
const_arg: optional["ConstArg"] | child
generic_arg_list: optional["GenericArgList"] | child
name_ref: optional["NameRef"] | child
param_list: optional["ParamList"] | child
ret_type: optional["RetTypeRef"] | child
return_type_syntax: optional["ReturnTypeSyntax"] | child
ty: optional["TypeRef"] | child
type_bound_list: optional["TypeBoundList"] | child
class Attr(AstNode):
meta: optional["Meta"] | child
class AwaitExpr(Expr):
attrs: list["Attr"] | child
expr: optional["Expr"] | child
class BecomeExpr(Expr):
attrs: list["Attr"] | child
expr: optional["Expr"] | child
class BinaryExpr(Expr):
attrs: list["Attr"] | child
lhs: optional["Expr"] | child
operator_name: optional[string]
rhs: optional["Expr"] | child
class BlockExpr(Expr):
attrs: list["Attr"] | child
is_async: predicate
is_const: predicate
is_gen: predicate
is_move: predicate
is_try: predicate
is_unsafe: predicate
label: optional["Label"] | child
stmt_list: optional["StmtList"] | child
class BoxPat(Pat):
pat: optional["Pat"] | child
class BreakExpr(Expr):
attrs: list["Attr"] | child
expr: optional["Expr"] | child
lifetime: optional["Lifetime"] | child
class CallExpr(Expr):
arg_list: optional["ArgList"] | child
attrs: list["Attr"] | child
function: optional["Expr"] | child
class CastExpr(Expr):
attrs: list["Attr"] | child
expr: optional["Expr"] | child
ty: optional["TypeRef"] | child
class ClosureBinder(AstNode):
generic_param_list: optional["GenericParamList"] | child
class ClosureExpr(Expr):
attrs: list["Attr"] | child
body: optional["Expr"] | child
closure_binder: optional["ClosureBinder"] | child
is_async: predicate
is_const: predicate
is_gen: predicate
is_move: predicate
is_static: predicate
param_list: optional["ParamList"] | child
ret_type: optional["RetTypeRef"] | child
class Const(AssocItem,Item):
attrs: list["Attr"] | child
body: optional["Expr"] | child
is_const: predicate
is_default: predicate
name: optional["Name"] | child
ty: optional["TypeRef"] | child
visibility: optional["Visibility"] | child
class ConstArg(GenericArg):
expr: optional["Expr"] | child
class ConstBlockPat(Pat):
block_expr: optional["BlockExpr"] | child
is_const: predicate
class ConstParam(GenericParam):
attrs: list["Attr"] | child
default_val: optional["ConstArg"] | child
is_const: predicate
name: optional["Name"] | child
ty: optional["TypeRef"] | child
class ContinueExpr(Expr):
attrs: list["Attr"] | child
lifetime: optional["Lifetime"] | child
class DynTraitTypeRef(TypeRef):
type_bound_list: optional["TypeBoundList"] | child
class Enum(Item):
attrs: list["Attr"] | child
generic_param_list: optional["GenericParamList"] | child
name: optional["Name"] | child
variant_list: optional["VariantList"] | child
visibility: optional["Visibility"] | child
where_clause: optional["WhereClause"] | child
class ExprStmt(Stmt):
expr: optional["Expr"] | child
class ExternBlock(Item):
abi: optional["Abi"] | child
attrs: list["Attr"] | child
extern_item_list: optional["ExternItemList"] | child
is_unsafe: predicate
class ExternCrate(Item):
attrs: list["Attr"] | child
name_ref: optional["NameRef"] | child
rename: optional["Rename"] | child
visibility: optional["Visibility"] | child
class ExternItemList(AstNode):
attrs: list["Attr"] | child
extern_items: list["ExternItem"] | child
class FieldExpr(Expr):
attrs: list["Attr"] | child
expr: optional["Expr"] | child
name_ref: optional["NameRef"] | child
class Function(AssocItem,ExternItem,Item):
abi: optional["Abi"] | child
attrs: list["Attr"] | child
body: optional["BlockExpr"] | child
generic_param_list: optional["GenericParamList"] | child
is_async: predicate
is_const: predicate
is_default: predicate
is_gen: predicate
is_unsafe: predicate
name: optional["Name"] | child
param_list: optional["ParamList"] | child
ret_type: optional["RetTypeRef"] | child
visibility: optional["Visibility"] | child
where_clause: optional["WhereClause"] | child
class FnPtrTypeRef(TypeRef):
abi: optional["Abi"] | child
is_async: predicate
is_const: predicate
is_unsafe: predicate
param_list: optional["ParamList"] | child
ret_type: optional["RetTypeRef"] | child
class ForExpr(Expr):
attrs: list["Attr"] | child
iterable: optional["Expr"] | child
label: optional["Label"] | child
loop_body: optional["BlockExpr"] | child
pat: optional["Pat"] | child
class ForTypeRef(TypeRef):
generic_param_list: optional["GenericParamList"] | child
ty: optional["TypeRef"] | child
class FormatArgsArg(AstNode):
expr: optional["Expr"] | child
name: optional["Name"] | child
class FormatArgsExpr(Expr):
args: list["FormatArgsArg"] | child
attrs: list["Attr"] | child
template: optional["Expr"] | child
class GenericArgList(AstNode):
generic_args: list["GenericArg"] | child
class GenericParamList(AstNode):
generic_params: list["GenericParam"] | child
class IdentPat(Pat):
attrs: list["Attr"] | child
is_mut: predicate
is_ref: predicate
name: optional["Name"] | child
pat: optional["Pat"] | child
class IfExpr(Expr):
attrs: list["Attr"] | child
condition: optional["Expr"] | child
else_: optional["Expr"] | child
then: optional["BlockExpr"] | child
class Impl(Item):
assoc_item_list: optional["AssocItemList"] | child
attrs: list["Attr"] | child
generic_param_list: optional["GenericParamList"] | child
is_const: predicate
is_default: predicate
is_unsafe: predicate
self_ty: optional["TypeRef"] | child
trait_: optional["TypeRef"] | child
visibility: optional["Visibility"] | child
where_clause: optional["WhereClause"] | child
class ImplTraitTypeRef(TypeRef):
type_bound_list: optional["TypeBoundList"] | child
class IndexExpr(Expr):
attrs: list["Attr"] | child
base: optional["Expr"] | child
index: optional["Expr"] | child
class InferTypeRef(TypeRef):
pass
class ItemList(AstNode):
attrs: list["Attr"] | child
items: list["Item"] | child
class Label(AstNode):
lifetime: optional["Lifetime"] | child
class LetElse(AstNode):
block_expr: optional["BlockExpr"] | child
class LetExpr(Expr):
attrs: list["Attr"] | child
scrutinee: optional["Expr"] | child
pat: optional["Pat"] | child
class LetStmt(Stmt):
attrs: list["Attr"] | child
initializer: optional["Expr"] | child
let_else: optional["LetElse"] | child
pat: optional["Pat"] | child
ty: optional["TypeRef"] | child
class Lifetime(AstNode):
text: optional[string]
class LifetimeArg(GenericArg):
lifetime: optional["Lifetime"] | child
class LifetimeParam(GenericParam):
attrs: list["Attr"] | child
lifetime: optional["Lifetime"] | child
type_bound_list: optional["TypeBoundList"] | child
class LiteralExpr(Expr):
attrs: list["Attr"] | child
text_value: optional[string]
class LiteralPat(Pat):
literal: optional["LiteralExpr"] | child
class LoopExpr(Expr):
attrs: list["Attr"] | child
label: optional["Label"] | child
loop_body: optional["BlockExpr"] | child
class MacroCall(AssocItem,ExternItem,Item):
attrs: list["Attr"] | child
path: optional["Path"] | child
token_tree: optional["TokenTree"] | child
class MacroDef(Item):
args: optional["TokenTree"] | child
attrs: list["Attr"] | child
body: optional["TokenTree"] | child
name: optional["Name"] | child
visibility: optional["Visibility"] | child
class MacroExpr(Expr):
macro_call: optional["MacroCall"] | child
class MacroItems(AstNode):
items: list["Item"] | child
class MacroPat(Pat):
macro_call: optional["MacroCall"] | child
class MacroRules(Item):
attrs: list["Attr"] | child
name: optional["Name"] | child
token_tree: optional["TokenTree"] | child
visibility: optional["Visibility"] | child
class MacroStmts(AstNode):
expr: optional["Expr"] | child
statements: list["Stmt"] | child
class MacroTypeRef(TypeRef):
macro_call: optional["MacroCall"] | child
class MatchArm(AstNode):
attrs: list["Attr"] | child
expr: optional["Expr"] | child
guard: optional["MatchGuard"] | child
pat: optional["Pat"] | child
class MatchArmList(AstNode):
arms: list["MatchArm"] | child
attrs: list["Attr"] | child
class MatchExpr(Expr):
attrs: list["Attr"] | child
scrutinee: optional["Expr"] | child
match_arm_list: optional["MatchArmList"] | child
class MatchGuard(AstNode):
condition: optional["Expr"] | child
class Meta(AstNode):
expr: optional["Expr"] | child
is_unsafe: predicate
path: optional["Path"] | child
token_tree: optional["TokenTree"] | child
class MethodCallExpr(Expr):
arg_list: optional["ArgList"] | child
attrs: list["Attr"] | child
generic_arg_list: optional["GenericArgList"] | child
name_ref: optional["NameRef"] | child
receiver: optional["Expr"] | child
class Module(Item):
attrs: list["Attr"] | child
item_list: optional["ItemList"] | child
name: optional["Name"] | child
visibility: optional["Visibility"] | child
class Name(AstNode):
text: optional[string]
class NameRef(AstNode):
text: optional[string]
class NeverTypeRef(TypeRef):
pass
class OffsetOfExpr(Expr):
attrs: list["Attr"] | child
fields: list["NameRef"] | child
ty: optional["TypeRef"] | child
class OrPat(Pat):
pats: list["Pat"] | child
class Param(AstNode):
attrs: list["Attr"] | child
pat: optional["Pat"] | child
ty: optional["TypeRef"] | child
class ParamList(AstNode):
params: list["Param"] | child
self_param: optional["SelfParam"] | child
class ParenExpr(Expr):
attrs: list["Attr"] | child
expr: optional["Expr"] | child
class ParenPat(Pat):
pat: optional["Pat"] | child
class ParenTypeRef(TypeRef):
ty: optional["TypeRef"] | child
class Path(AstNode):
qualifier: optional["Path"] | child
part: optional["PathSegment"] | child
class PathExpr(Expr):
attrs: list["Attr"] | child
path: optional["Path"] | child
class PathPat(Pat):
path: optional["Path"] | child
class PathSegment(AstNode):
generic_arg_list: optional["GenericArgList"] | child
name_ref: optional["NameRef"] | child
param_list: optional["ParamList"] | child
path_type: optional["PathTypeRef"] | child
ret_type: optional["RetTypeRef"] | child
return_type_syntax: optional["ReturnTypeSyntax"] | child
ty: optional["TypeRef"] | child
class PathTypeRef(TypeRef):
path: optional["Path"] | child
class PrefixExpr(Expr):
attrs: list["Attr"] | child
expr: optional["Expr"] | child
operator_name: optional[string]
class PtrTypeRef(TypeRef):
is_const: predicate
is_mut: predicate
ty: optional["TypeRef"] | child
class RangeExpr(Expr):
attrs: list["Attr"] | child
end: optional["Expr"] | child
operator_name: optional[string]
start: optional["Expr"] | child
class RangePat(Pat):
end: optional["Pat"] | child
operator_name: optional[string]
start: optional["Pat"] | child
class RecordExpr(Expr):
path: optional["Path"] | child
record_expr_field_list: optional["RecordExprFieldList"] | child
class RecordExprField(AstNode):
attrs: list["Attr"] | child
expr: optional["Expr"] | child
name_ref: optional["NameRef"] | child
class RecordExprFieldList(AstNode):
attrs: list["Attr"] | child
fields: list["RecordExprField"] | child
spread: optional["Expr"] | child
class RecordField(AstNode):
attrs: list["Attr"] | child
name: optional["Name"] | child
ty: optional["TypeRef"] | child
visibility: optional["Visibility"] | child
class RecordFieldList(FieldList):
fields: list["RecordField"] | child
class RecordPat(Pat):
path: optional["Path"] | child
record_pat_field_list: optional["RecordPatFieldList"] | child
class RecordPatField(AstNode):
attrs: list["Attr"] | child
name_ref: optional["NameRef"] | child
pat: optional["Pat"] | child
class RecordPatFieldList(AstNode):
fields: list["RecordPatField"] | child
rest_pat: optional["RestPat"] | child
class RefExpr(Expr):
attrs: list["Attr"] | child
expr: optional["Expr"] | child
is_const: predicate
is_mut: predicate
is_raw: predicate
class RefPat(Pat):
is_mut: predicate
pat: optional["Pat"] | child
class RefTypeRef(TypeRef):
is_mut: predicate
lifetime: optional["Lifetime"] | child
ty: optional["TypeRef"] | child
class Rename(AstNode):
name: optional["Name"] | child
class RestPat(Pat):
attrs: list["Attr"] | child
class RetTypeRef(AstNode):
ty: optional["TypeRef"] | child
class ReturnExpr(Expr):
attrs: list["Attr"] | child
expr: optional["Expr"] | child
class ReturnTypeSyntax(AstNode):
pass
class SelfParam(AstNode):
attrs: list["Attr"] | child
is_mut: predicate
lifetime: optional["Lifetime"] | child
name: optional["Name"] | child
ty: optional["TypeRef"] | child
class SlicePat(Pat):
pats: list["Pat"] | child
class SliceTypeRef(TypeRef):
ty: optional["TypeRef"] | child
class SourceFile(AstNode):
attrs: list["Attr"] | child
items: list["Item"] | child
class Static(ExternItem,Item):
attrs: list["Attr"] | child
body: optional["Expr"] | child
is_mut: predicate
is_static: predicate
name: optional["Name"] | child
ty: optional["TypeRef"] | child
visibility: optional["Visibility"] | child
class StmtList(AstNode):
attrs: list["Attr"] | child
statements: list["Stmt"] | child
tail_expr: optional["Expr"] | child
class Struct(Item):
attrs: list["Attr"] | child
field_list: optional["FieldList"] | child
generic_param_list: optional["GenericParamList"] | child
name: optional["Name"] | child
visibility: optional["Visibility"] | child
where_clause: optional["WhereClause"] | child
class TokenTree(AstNode):
pass
class Trait(Item):
assoc_item_list: optional["AssocItemList"] | child
attrs: list["Attr"] | child
generic_param_list: optional["GenericParamList"] | child
is_auto: predicate
is_unsafe: predicate
name: optional["Name"] | child
type_bound_list: optional["TypeBoundList"] | child
visibility: optional["Visibility"] | child
where_clause: optional["WhereClause"] | child
class TraitAlias(Item):
attrs: list["Attr"] | child
generic_param_list: optional["GenericParamList"] | child
name: optional["Name"] | child
type_bound_list: optional["TypeBoundList"] | child
visibility: optional["Visibility"] | child
where_clause: optional["WhereClause"] | child
class TryExpr(Expr):
attrs: list["Attr"] | child
expr: optional["Expr"] | child
class TupleExpr(Expr):
attrs: list["Attr"] | child
fields: list["Expr"] | child
class TupleField(AstNode):
attrs: list["Attr"] | child
ty: optional["TypeRef"] | child
visibility: optional["Visibility"] | child
class TupleFieldList(FieldList):
fields: list["TupleField"] | child
class TuplePat(Pat):
fields: list["Pat"] | child
class TupleStructPat(Pat):
fields: list["Pat"] | child
path: optional["Path"] | child
class TupleTypeRef(TypeRef):
fields: list["TypeRef"] | child
class TypeAlias(AssocItem,ExternItem,Item):
attrs: list["Attr"] | child
generic_param_list: optional["GenericParamList"] | child
is_default: predicate
name: optional["Name"] | child
ty: optional["TypeRef"] | child
type_bound_list: optional["TypeBoundList"] | child
visibility: optional["Visibility"] | child
where_clause: optional["WhereClause"] | child
class TypeArg(GenericArg):
ty: optional["TypeRef"] | child
class TypeBound(AstNode):
generic_param_list: optional["GenericParamList"] | child
is_async: predicate
is_const: predicate
lifetime: optional["Lifetime"] | child
ty: optional["TypeRef"] | child
class TypeBoundList(AstNode):
bounds: list["TypeBound"] | child
class TypeParam(GenericParam):
attrs: list["Attr"] | child
default_type: optional["TypeRef"] | child
name: optional["Name"] | child
type_bound_list: optional["TypeBoundList"] | child
class UnderscoreExpr(Expr):
attrs: list["Attr"] | child
class Union(Item):
attrs: list["Attr"] | child
generic_param_list: optional["GenericParamList"] | child
name: optional["Name"] | child
record_field_list: optional["RecordFieldList"] | child
visibility: optional["Visibility"] | child
where_clause: optional["WhereClause"] | child
class Use(Item):
attrs: list["Attr"] | child
use_tree: optional["UseTree"] | child
visibility: optional["Visibility"] | child
class UseTree(AstNode):
path: optional["Path"] | child
rename: optional["Rename"] | child
use_tree_list: optional["UseTreeList"] | child
class UseTreeList(AstNode):
use_trees: list["UseTree"] | child
class Variant(AstNode):
attrs: list["Attr"] | child
expr: optional["Expr"] | child
field_list: optional["FieldList"] | child
name: optional["Name"] | child
visibility: optional["Visibility"] | child
class VariantList(AstNode):
variants: list["Variant"] | child
class Visibility(AstNode):
path: optional["Path"] | child
class WhereClause(AstNode):
predicates: list["WherePred"] | child
class WherePred(AstNode):
generic_param_list: optional["GenericParamList"] | child
lifetime: optional["Lifetime"] | child
ty: optional["TypeRef"] | child
type_bound_list: optional["TypeBoundList"] | child
class WhileExpr(Expr):
attrs: list["Attr"] | child
condition: optional["Expr"] | child
label: optional["Label"] | child
loop_body: optional["BlockExpr"] | child
class WildcardPat(Pat):
pass
class YeetExpr(Expr):
attrs: list["Attr"] | child
expr: optional["Expr"] | child
class YieldExpr(Expr):
attrs: list["Attr"] | child
expr: optional["Expr"] | child