UniIR Nodes
Ability#
flowchart LR
Ability -->|T , None| body
Ability -->|bool| is_async
Ability -->|String , None| doc
Ability -->|Token , None| access
Ability -->|NameAtom , None| name_ref
Ability -->|bool| is_override
Ability -->|bool| is_static
Ability -->|bool| is_classmethod
Ability -->|bool| is_abstract
Ability -->|FuncSignature , EventSignature , None| signature
Ability -->|Expr , None| decorators
Ability -->|TypeParam , None| type_params
Ability(kid: 'Sequence[UniNode]' =
ArchHas#
flowchart LR
ArchHas -->|String , None| doc
ArchHas -->|Token , None| access
ArchHas -->|bool| is_static
ArchHas -->|HasVar| vars
ArchHas -->|bool| is_frozen
ArchHas(kid: 'Sequence[UniNode]' =
Archetype#
flowchart LR
Archetype -->|String , None| doc
Archetype -->|bool| is_async
Archetype -->|T , None| body
Archetype -->|Token , None| access
Archetype -->|Expr , None| decorators
Archetype -->|Name| name
Archetype -->|Token| arch_type
Archetype -->|Expr , None| base_classes
Archetype -->|TypeParam , None| type_params
Archetype(kid: 'Sequence[UniNode]' =
AssertStmt#
flowchart LR
AssertStmt -->|Expr| condition
AssertStmt -->|Expr , None| error_msg
AssertStmt(kid: 'Sequence[UniNode]' =
AssignCompr#
flowchart LR
AssignCompr -->|KWPair| assigns
AssignCompr(kid: 'Sequence[UniNode]' =
Assignment#
flowchart LR
Assignment -->|bool| is_enum_stmt
Assignment -->|Expr , None| type_tag
Assignment -->|Expr| target
Assignment -->|Expr , YieldExpr , None| value
Assignment -->|bool| mutable
Assignment -->|Token , None| aug_op
Assignment(kid: 'Sequence[UniNode]' =
AtomTrailer#
flowchart LR
AtomTrailer -->|Expr| target
AtomTrailer -->|AtomExpr , Expr| right
AtomTrailer -->|bool| is_attr
AtomTrailer -->|bool| is_null_ok
AtomTrailer -->|bool| is_genai
AtomTrailer(kid: 'Sequence[UniNode]' =
AtomUnit#
flowchart LR
AtomUnit -->|Expr , YieldExpr , Ability| value
AtomUnit(kid: 'Sequence[UniNode]' =
AwaitExpr#
flowchart LR
AwaitExpr -->|Expr| target
AwaitExpr(kid: 'Sequence[UniNode]' =
BinaryExpr#
flowchart LR
BinaryExpr -->|Expr| left
BinaryExpr -->|Expr| right
BinaryExpr -->|Token , DisconnectOp , ConnectOp| op
BinaryExpr(kid: 'Sequence[UniNode]' =
Bool#
flowchart LR
Bool -->|Source| orig_src
Bool -->|str| name
Bool -->|str| value
Bool -->|int| end_line
Bool -->|int| col_start
Bool -->|int| col_end_
Bool -->|int| pos_start
Bool -->|int| pos_end_
Bool(orig_src: 'Source', name: 'str', value: 'str', line: 'int', end_line: 'int', col_start: 'int', col_end: 'int', pos_start: 'int', pos_end: 'int') -> 'None'
BoolExpr#
flowchart LR
BoolExpr -->|UniCFGNode , None| sc_true_target
BoolExpr -->|UniCFGNode , None| sc_false_target
BoolExpr -->|Token| op
BoolExpr -->|list - Expr| values
BoolExpr(kid: 'Sequence[UniNode]' =
BuiltinType#
flowchart LR
BuiltinType -->|Source| orig_src
BuiltinType -->|str| name
BuiltinType -->|str| value
BuiltinType -->|int| end_line
BuiltinType -->|int| col_start
BuiltinType -->|int| col_end_
BuiltinType -->|int| pos_start
BuiltinType -->|int| pos_end_
BuiltinType -->|bool| is_enum_stmt
BuiltinType -->|bool| is_kwesc
BuiltinType(orig_src: 'Source', name: 'str', value: 'str', line: 'int', end_line: 'int', col_start: 'int', col_end: 'int', pos_start: 'int', pos_end: 'int', is_enum_stmt: 'bool' = False, is_kwesc: 'bool' = False) -> 'None'
ClientBlock#
flowchart LR
ClientBlock -->|String , None| doc
ClientBlock -->|ElementStmt| body
ClientBlock -->|bool| implicit
ClientBlock(kid: 'Sequence[UniNode]' =
CommentToken#
flowchart LR
CommentToken -->|Source| orig_src
CommentToken -->|str| name
CommentToken -->|str| value
CommentToken -->|int| end_line
CommentToken -->|int| col_start
CommentToken -->|int| col_end_
CommentToken -->|int| pos_start
CommentToken -->|int| pos_end_
CommentToken -->|bool| is_inline
CommentToken(orig_src: 'Source', name: 'str', value: 'str', line: 'int', end_line: 'int', col_start: 'int', col_end: 'int', pos_start: 'int', pos_end: 'int', kid: 'Sequence[UniNode]', is_inline: 'bool' = False) -> 'None'
CompareExpr#
flowchart LR
CompareExpr -->|Expr| left
CompareExpr -->|list - Expr| rights
CompareExpr -->|list - Token| ops
CompareExpr(kid: 'Sequence[UniNode]' =
ConcurrentExpr#
flowchart LR
ConcurrentExpr -->|Token , None| tok
ConcurrentExpr -->|Expr| target
ConcurrentExpr(kid: 'Sequence[UniNode]' =
ConditionalNode#
flowchart LR
ConditionalNode -->|UniCFGNode , None| sc_true_target
ConditionalNode -->|UniCFGNode , None| sc_false_target
ConditionalNode(kid: 'Sequence[UniNode]' =
ConnectOp#
flowchart LR
ConnectOp -->|Expr , None| conn_type
ConnectOp -->|AssignCompr , None| conn_assign
ConnectOp -->|EdgeDir| edge_dir
ConnectOp(kid: 'Sequence[UniNode]' =
CtrlStmt#
flowchart LR
CtrlStmt -->|Token| ctrl
CtrlStmt(kid: 'Sequence[UniNode]' =
DeleteStmt#
flowchart LR
DeleteStmt -->|Expr| target
DeleteStmt(kid: 'Sequence[UniNode]' =
DictCompr#
flowchart LR
DictCompr -->|KVPair| kv_pair
DictCompr -->|list - InnerCompr| compr
DictCompr(kid: 'Sequence[UniNode]' =
DictVal#
flowchart LR
DictVal -->|KVPair| kv_pairs
DictVal(kid: 'Sequence[UniNode]' =
DisconnectOp#
flowchart LR
DisconnectOp -->|EdgeOpRef| edge_spec
DisconnectOp(kid: 'Sequence[UniNode]' =
EdgeOpRef#
flowchart LR
EdgeOpRef -->|FilterCompr , None| filter_cond
EdgeOpRef -->|EdgeDir| edge_dir
EdgeOpRef(kid: 'Sequence[UniNode]' =
EdgeRefTrailer#
flowchart LR
EdgeRefTrailer -->|list - Expr , FilterCompr| chain
EdgeRefTrailer -->|bool| edges_only
EdgeRefTrailer -->|bool| is_async
EdgeRefTrailer(kid: 'Sequence[UniNode]' =
Ellipsis#
flowchart LR
Ellipsis -->|Source| orig_src
Ellipsis -->|str| name
Ellipsis -->|str| value
Ellipsis -->|int| end_line
Ellipsis -->|int| col_start
Ellipsis -->|int| col_end_
Ellipsis -->|int| pos_start
Ellipsis -->|int| pos_end_
Ellipsis(orig_src: 'Source', name: 'str', value: 'str', line: 'int', end_line: 'int', col_start: 'int', col_end: 'int', pos_start: 'int', pos_end: 'int') -> 'None'
ElseIf#
flowchart LR
ElseIf -->|ElseStmt , ElseIf , None| else_body
ElseIf -->|Expr| condition
ElseIf -->|CodeBlockStmt| body
ElseIf(kid: 'Sequence[UniNode]' =
ElseStmt#
flowchart LR
ElseStmt -->|CodeBlockStmt| body
ElseStmt(kid: 'Sequence[UniNode]' =
Enum#
flowchart LR
Enum -->|String , None| doc
Enum -->|bool| is_async
Enum -->|T , None| body
Enum -->|Token , None| access
Enum -->|Expr , None| decorators
Enum -->|Name| name
Enum -->|Expr , None| base_classes
Enum(kid: 'Sequence[UniNode]' =
EventSignature#
flowchart LR
EventSignature -->|Token| event
EventSignature -->|Expr , None| arch_tag_info
EventSignature(kid: 'Sequence[UniNode]' =
Except#
flowchart LR
Except -->|Expr| ex_type
Except -->|Name , None| name
Except -->|CodeBlockStmt| body
Except(kid: 'Sequence[UniNode]' =
ExprAsItem#
flowchart LR
ExprAsItem -->|Expr| expr
ExprAsItem -->|Expr , None| alias
ExprAsItem(kid: 'Sequence[UniNode]' =
ExprStmt#
flowchart LR
ExprStmt -->|Expr| expr
ExprStmt -->|bool| in_fstring
ExprStmt(kid: 'Sequence[UniNode]' =
FString#
flowchart LR
FString -->|Token , None| start
FString -->|String , FormattedValue| parts
FString -->|Token , None| end
FString(kid: 'Sequence[UniNode]' =
FilterCompr#
flowchart LR
FilterCompr -->|Expr , None| f_type
FilterCompr -->|CompareExpr| compares
FilterCompr(kid: 'Sequence[UniNode]' =
FinallyStmt#
flowchart LR
FinallyStmt -->|CodeBlockStmt| body
FinallyStmt(kid: 'Sequence[UniNode]' =
Float#
flowchart LR
Float -->|Source| orig_src
Float -->|str| name
Float -->|str| value
Float -->|int| end_line
Float -->|int| col_start
Float -->|int| col_end_
Float -->|int| pos_start
Float -->|int| pos_end_
Float(orig_src: 'Source', name: 'str', value: 'str', line: 'int', end_line: 'int', col_start: 'int', col_end: 'int', pos_start: 'int', pos_end: 'int') -> 'None'
FormattedValue#
flowchart LR
FormattedValue -->|Expr| format_part
FormattedValue -->|int| conversion
FormattedValue -->|Expr , None| format_spec
FormattedValue(kid: 'Sequence[UniNode]' =
FuncCall#
flowchart LR
FuncCall -->|Expr| target
FuncCall -->|Expr , KWPair , None| params
FuncCall -->|Expr , None| genai_call
FuncCall(kid: 'Sequence[UniNode]' =
FuncSignature#
flowchart LR
FuncSignature -->|ParamVar| posonly_params
FuncSignature -->|ParamVar , None| params
FuncSignature -->|ParamVar , None| varargs
FuncSignature -->|ParamVar| kwonlyargs
FuncSignature -->|ParamVar , None| kwargs
FuncSignature -->|Expr , None| return_type
FuncSignature(kid: 'Sequence[UniNode]' =
GenCompr#
flowchart LR
GenCompr -->|Expr| out_expr
GenCompr -->|list - InnerCompr| compr
GenCompr(kid: 'Sequence[UniNode]' =
GlobalStmt#
flowchart LR
GlobalStmt -->|NameAtom| target
GlobalStmt(kid: 'Sequence[UniNode]' =
GlobalVars#
flowchart LR
GlobalVars -->|Token , None| access
GlobalVars -->|String , None| doc
GlobalVars -->|Assignment| assignments
GlobalVars -->|bool| is_frozen
GlobalVars(kid: 'Sequence[UniNode]' =
HasVar#
flowchart LR
HasVar -->|Expr , None| type_tag
HasVar -->|Name| name
HasVar -->|Expr , None| value
HasVar -->|bool| defer
HasVar(kid: 'Sequence[UniNode]' =
IfElseExpr#
flowchart LR
IfElseExpr -->|Expr| condition
IfElseExpr -->|Expr| value
IfElseExpr -->|Expr| else_value
IfElseExpr(kid: 'Sequence[UniNode]' =
IfStmt#
flowchart LR
IfStmt -->|ElseStmt , ElseIf , None| else_body
IfStmt -->|Expr| condition
IfStmt -->|CodeBlockStmt| body
IfStmt(kid: 'Sequence[UniNode]' =
ImplDef#
flowchart LR
ImplDef -->|String , None| doc
ImplDef -->|Expr , None| decorators
ImplDef -->|NameAtom| target
ImplDef -->|Expr , FuncSignature , EventSignature , None| spec
ImplDef -->|CodeBlockStmt , EnumBlockStmt , Expr| body
ImplDef -->|UniNode , None| decl_link
ImplDef(kid: 'Sequence[UniNode]' =
Import#
flowchart LR
Import -->|String , None| doc
Import -->|ModulePath , None| from_loc
Import -->|ModuleItem , ModulePath| items
Import -->|bool| is_absorb
Import -->|UniNode , None| clib_decls
Import(kid: 'Sequence[UniNode]' =
InForStmt#
flowchart LR
InForStmt -->|ElseStmt , ElseIf , None| else_body
InForStmt -->|bool| is_async
InForStmt -->|Expr| target
InForStmt -->|Expr| collection
InForStmt -->|CodeBlockStmt| body
InForStmt(kid: 'Sequence[UniNode]' =
IndexSlice#
flowchart LR
IndexSlice -->|list - Slice| slices
IndexSlice -->|bool| is_range
Slice node type for Jac Ast.
InnerCompr#
flowchart LR
InnerCompr -->|bool| is_async
InnerCompr -->|Expr| target
InnerCompr -->|Expr| collection
InnerCompr -->|list - Expr , None| conditional
InnerCompr(kid: 'Sequence[UniNode]' =
Int#
flowchart LR
Int -->|Source| orig_src
Int -->|str| name
Int -->|str| value
Int -->|int| end_line
Int -->|int| col_start
Int -->|int| col_end_
Int -->|int| pos_start
Int -->|int| pos_end_
Int(orig_src: 'Source', name: 'str', value: 'str', line: 'int', end_line: 'int', col_start: 'int', col_end: 'int', pos_start: 'int', pos_end: 'int') -> 'None'
IterForStmt#
flowchart LR
IterForStmt -->|ElseStmt , ElseIf , None| else_body
IterForStmt -->|bool| is_async
IterForStmt -->|Assignment| iter
IterForStmt -->|Expr| condition
IterForStmt -->|Assignment| count_by
IterForStmt -->|CodeBlockStmt| body
IterForStmt(kid: 'Sequence[UniNode]' =
JsxElement#
flowchart LR
JsxElement -->|JsxElementName , None| name
JsxElement -->|JsxAttribute , None| attributes
JsxElement -->|JsxChild , JsxElement , None| children
JsxElement -->|bool| is_self_closing
JsxElement -->|bool| is_fragment
JsxElement(kid: 'Sequence[UniNode]' =
JsxElementName#
flowchart LR
JsxElementName -->|Name , Token| parts
JsxElementName(kid: 'Sequence[UniNode]' =
JsxExpression#
flowchart LR
JsxExpression -->|Expr| expr
JsxExpression(kid: 'Sequence[UniNode]' =
JsxNormalAttribute#
flowchart LR
JsxNormalAttribute -->|Name , Token| name
JsxNormalAttribute -->|String , Expr , None| value
JsxNormalAttribute(kid: 'Sequence[UniNode]' =
JsxSpreadAttribute#
flowchart LR
JsxSpreadAttribute -->|Expr| expr
JsxSpreadAttribute(kid: 'Sequence[UniNode]' =
JsxText#
flowchart LR
JsxText -->|str , Token| value
JsxText(kid: 'Sequence[UniNode]' =
KVPair#
flowchart LR
KVPair -->|Expr , None| key
KVPair -->|Expr| value
KVPair(kid: 'Sequence[UniNode]' =
KWPair#
flowchart LR
KWPair -->|NameAtom , None| key
KWPair -->|Expr| value
KWPair(kid: 'Sequence[UniNode]' =
LambdaExpr#
flowchart LR
LambdaExpr -->|Expr , CodeBlockStmt| body
LambdaExpr -->|FuncSignature , None| signature
LambdaExpr(kid: 'Sequence[UniNode]' =
ListCompr#
flowchart LR
ListCompr -->|Expr| out_expr
ListCompr -->|list - InnerCompr| compr
ListCompr(kid: 'Sequence[UniNode]' =
ListVal#
flowchart LR
ListVal -->|Expr| values
ListVal(kid: 'Sequence[UniNode]' =
MatchArch#
flowchart LR
MatchArch -->|AtomTrailer , NameAtom| name
MatchArch -->|MatchPattern , None| arg_patterns
MatchArch -->|MatchKVPair , None| kw_patterns
MatchArch(kid: 'Sequence[UniNode]' =
MatchAs#
flowchart LR
MatchAs -->|NameAtom| name
MatchAs -->|MatchPattern , None| pattern
MatchAs(kid: 'Sequence[UniNode]' =
MatchCase#
flowchart LR
MatchCase -->|MatchPattern| pattern
MatchCase -->|Expr , None| guard
MatchCase -->|list - CodeBlockStmt| body
MatchCase(kid: 'Sequence[UniNode]' =
MatchKVPair#
flowchart LR
MatchKVPair -->|MatchPattern , NameAtom , AtomExpr| key
MatchKVPair -->|MatchPattern| value
MatchKVPair(kid: 'Sequence[UniNode]' =
MatchMapping#
flowchart LR
MatchMapping -->|list - MatchKVPair , MatchStar| values
MatchMapping(kid: 'Sequence[UniNode]' =
MatchOr#
flowchart LR
MatchOr -->|list - MatchPattern| patterns
MatchOr(kid: 'Sequence[UniNode]' =
MatchSequence#
flowchart LR
MatchSequence -->|list - MatchPattern| values
MatchSequence(kid: 'Sequence[UniNode]' =
MatchSingleton#
flowchart LR
MatchSingleton -->|Bool , Null| value
MatchSingleton(kid: 'Sequence[UniNode]' =
MatchStar#
flowchart LR
MatchStar -->|NameAtom| name
MatchStar -->|bool| is_list
MatchStar(kid: 'Sequence[UniNode]' =
MatchStmt#
flowchart LR
MatchStmt -->|Expr| target
MatchStmt -->|list - MatchCase| cases
MatchStmt(kid: 'Sequence[UniNode]' =
MatchValue#
flowchart LR
MatchValue -->|Expr| value
MatchValue(kid: 'Sequence[UniNode]' =
Module#
flowchart LR
Module -->|String , None| doc
Module -->|str| name
Module -->|Source| source
Module -->|ElementStmt , String , EmptyToken| body
Module -->|list - Token| terminals
Module -->|bool| stub_only
Module(kid: 'Sequence[UniNode]' =
ModuleCode#
flowchart LR
ModuleCode -->|bool| is_enum_stmt
ModuleCode -->|String , None| doc
ModuleCode -->|Name , None| name
ModuleCode -->|CodeBlockStmt| body
ModuleCode(kid: 'Sequence[UniNode]' =
ModuleItem#
flowchart LR
ModuleItem -->|Name , Token| name
ModuleItem -->|Name , None| alias
ModuleItem(kid: 'Sequence[UniNode]' =
ModulePath#
flowchart LR
ModulePath -->|Name , String , None| path
ModulePath -->|int| level
ModulePath -->|Name , None| alias
ModulePath(kid: 'Sequence[UniNode]' =
MultiString#
flowchart LR
MultiString -->|String , FString| strings
MultiString(kid: 'Sequence[UniNode]' =
Name#
flowchart LR
Name -->|Source| orig_src
Name -->|str| name
Name -->|str| value
Name -->|int| end_line
Name -->|int| col_start
Name -->|int| col_end_
Name -->|int| pos_start
Name -->|int| pos_end_
Name -->|bool| is_enum_stmt
Name -->|bool| is_kwesc
Generate name from node.
NativeBlock#
flowchart LR
NativeBlock -->|String , None| doc
NativeBlock -->|ElementStmt| body
NativeBlock -->|bool| implicit
NativeBlock(kid: 'Sequence[UniNode]' =
NonLocalStmt#
flowchart LR
NonLocalStmt -->|NameAtom| target
NonLocalStmt(kid: 'Sequence[UniNode]' =
Null#
flowchart LR
Null -->|Source| orig_src
Null -->|str| name
Null -->|str| value
Null -->|int| end_line
Null -->|int| col_start
Null -->|int| col_end_
Null -->|int| pos_start
Null -->|int| pos_end_
Null(orig_src: 'Source', name: 'str', value: 'str', line: 'int', end_line: 'int', col_start: 'int', col_end: 'int', pos_start: 'int', pos_end: 'int') -> 'None'
ParamVar#
flowchart LR
ParamVar -->|Expr , None| type_tag
ParamVar -->|Name| name
ParamVar -->|Token , None| unpack
ParamVar -->|Expr , None| value
ParamVar(kid: 'Sequence[UniNode]' =
PyInlineCode#
flowchart LR
PyInlineCode -->|bool| is_enum_stmt
PyInlineCode -->|String , None| doc
PyInlineCode -->|Token| code
PyInlineCode(kid: 'Sequence[UniNode]' =
RaiseStmt#
flowchart LR
RaiseStmt -->|Expr , None| cause
RaiseStmt -->|Expr , None| from_target
RaiseStmt(kid: 'Sequence[UniNode]' =
ReportStmt#
flowchart LR
ReportStmt -->|Expr| expr
ReportStmt(kid: 'Sequence[UniNode]' =
ReturnStmt#
flowchart LR
ReturnStmt -->|Expr , None| expr
ReturnStmt(kid: 'Sequence[UniNode]' =
SemDef#
flowchart LR
SemDef -->|String , None| doc
SemDef -->|NameAtom| target
SemDef -->|String| value
SemDef(kid: 'Sequence[UniNode]' =
Semi#
flowchart LR
Semi -->|Source| orig_src
Semi -->|str| name
Semi -->|str| value
Semi -->|int| end_line
Semi -->|int| col_start
Semi -->|int| col_end_
Semi -->|int| pos_start
Semi -->|int| pos_end_
Initialize token.
ServerBlock#
flowchart LR
ServerBlock -->|String , None| doc
ServerBlock -->|ElementStmt| body
ServerBlock -->|bool| implicit
ServerBlock(kid: 'Sequence[UniNode]' =
SetCompr#
flowchart LR
SetCompr -->|Expr| out_expr
SetCompr -->|list - InnerCompr| compr
SetCompr(kid: 'Sequence[UniNode]' =
SetVal#
flowchart LR
SetVal -->|Expr , None| values
SetVal(kid: 'Sequence[UniNode]' =
SpecialVarRef#
flowchart LR
SpecialVarRef -->|Name| var
SpecialVarRef -->|bool| is_enum_stmt
SpecialVarRef(var: 'Name', is_enum_stmt: 'bool' = False) -> 'None'
String#
flowchart LR
String -->|Source| orig_src
String -->|str| name
String -->|str| value
String -->|int| end_line
String -->|int| col_start
String -->|int| col_end_
String -->|int| pos_start
String -->|int| pos_end_
String(orig_src: 'Source', name: 'str', value: 'str', line: 'int', end_line: 'int', col_start: 'int', col_end: 'int', pos_start: 'int', pos_end: 'int') -> 'None'
SubTag#
flowchart LR
SubTag -->|T| tag
SubTag(kid: 'Sequence[UniNode]' =
SwitchCase#
flowchart LR
SwitchCase -->|MatchPattern , None| pattern
SwitchCase -->|list - CodeBlockStmt| body
SwitchCase(kid: 'Sequence[UniNode]' =
SwitchStmt#
flowchart LR
SwitchStmt -->|Expr| target
SwitchStmt -->|list - SwitchCase| cases
SwitchStmt(kid: 'Sequence[UniNode]' =
Test#
flowchart LR
Test -->|String , None| doc
Test -->|Name , Token| name
Test -->|CodeBlockStmt| body
Test -->|String , None| description
Test -->|Expr , None| decorators
Test(kid: 'Sequence[UniNode]' =
Token#
flowchart LR
Token -->|Source| orig_src
Token -->|str| name
Token -->|str| value
Token -->|int| end_line
Token -->|int| col_start
Token -->|int| col_end_
Token -->|int| pos_start
Token -->|int| pos_end_
Token(orig_src: 'Source', name: 'str', value: 'str', line: 'int', end_line: 'int', col_start: 'int', col_end: 'int', pos_start: 'int', pos_end: 'int') -> 'None'
TryStmt#
flowchart LR
TryStmt -->|ElseStmt , ElseIf , None| else_body
TryStmt -->|CodeBlockStmt| body
TryStmt -->|Except| excepts
TryStmt -->|FinallyStmt , None| finally_body
TryStmt(kid: 'Sequence[UniNode]' =
TupleVal#
flowchart LR
TupleVal -->|Expr , KWPair| values
TupleVal(kid: 'Sequence[UniNode]' =
TypeAlias#
flowchart LR
TypeAlias -->|String , None| doc
TypeAlias -->|Token , None| access
TypeAlias -->|Name| name
TypeAlias -->|TypeParam , None| type_params
TypeAlias -->|Expr| value
TypeAlias(kid: 'Sequence[UniNode]' =
TypeParam#
flowchart LR
TypeParam -->|Name| name
TypeParam -->|Expr , None| bound
TypeParam -->|Expr , None| default_val
TypeParam(kid: 'Sequence[UniNode]' =
TypedCtxBlock#
flowchart LR
TypedCtxBlock -->|Expr| type_ctx
TypedCtxBlock -->|CodeBlockStmt| body
TypedCtxBlock(kid: 'Sequence[UniNode]' =
UnaryExpr#
flowchart LR
UnaryExpr -->|Expr| operand
UnaryExpr -->|Token| op
UnaryExpr(kid: 'Sequence[UniNode]' =
VisitStmt#
flowchart LR
VisitStmt -->|ElseStmt , ElseIf , None| else_body
VisitStmt -->|Expr , None| insert_loc
VisitStmt -->|Expr| target
VisitStmt(kid: 'Sequence[UniNode]' =
WhileStmt#
flowchart LR
WhileStmt -->|ElseStmt , ElseIf , None| else_body
WhileStmt -->|Expr| condition
WhileStmt -->|CodeBlockStmt| body
WhileStmt(kid: 'Sequence[UniNode]' =
WithStmt#
flowchart LR
WithStmt -->|bool| is_async
WithStmt -->|ExprAsItem| exprs
WithStmt -->|CodeBlockStmt| body
WithStmt(kid: 'Sequence[UniNode]' =
YieldExpr#
flowchart LR
YieldExpr -->|Expr , None| expr
YieldExpr -->|bool| with_from
YieldExpr(kid: 'Sequence[UniNode]' =