AstNode

Trait AstNode 

Source
pub trait AstNode:
    Debug
    + PartialEq
    + Clone
    + Spanned {
    const TYPE: &'static str;
}
Available on crate feature __common only.
Expand description

A trait for ast nodes.

Required Associated Constants§

Source

const TYPE: &'static str

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl AstNode for ArrayLit

Source§

const TYPE: &'static str = "ArrayExpression"

Source§

impl AstNode for ArrayPat

Source§

const TYPE: &'static str = "ArrayPattern"

Source§

impl AstNode for ArrowExpr

Source§

const TYPE: &'static str = "ArrowFunctionExpression"

Source§

impl AstNode for AssignExpr

Source§

const TYPE: &'static str = "AssignmentExpression"

Source§

impl AstNode for AssignPat

Source§

const TYPE: &'static str = "AssignmentPattern"

Source§

impl AstNode for AssignPatProp

Source§

const TYPE: &'static str = "AssignmentPatternProperty"

Source§

impl AstNode for AssignProp

Source§

const TYPE: &'static str = "AssignmentProperty"

Source§

impl AstNode for AutoAccessor

Source§

const TYPE: &'static str = "AutoAccessor"

Source§

impl AstNode for AwaitExpr

Source§

const TYPE: &'static str = "AwaitExpression"

Source§

impl AstNode for BigInt

Source§

const TYPE: &'static str = "BigIntLiteral"

Source§

impl AstNode for BinExpr

Source§

const TYPE: &'static str = "BinaryExpression"

Source§

impl AstNode for BlockStmt

Source§

const TYPE: &'static str = "BlockStatement"

Source§

impl AstNode for Bool

Source§

const TYPE: &'static str = "BooleanLiteral"

Source§

impl AstNode for BreakStmt

Source§

const TYPE: &'static str = "BreakStatement"

Source§

impl AstNode for CallExpr

Source§

const TYPE: &'static str = "CallExpression"

Source§

impl AstNode for CatchClause

Source§

const TYPE: &'static str = "CatchClause"

Source§

impl AstNode for ClassDecl

Source§

const TYPE: &'static str = "ClassDeclaration"

Source§

impl AstNode for ClassExpr

Source§

const TYPE: &'static str = "ClassExpression"

Source§

impl AstNode for ClassMethod

Source§

const TYPE: &'static str = "ClassMethod"

Source§

impl AstNode for ClassProp

Source§

const TYPE: &'static str = "ClassProperty"

Source§

impl AstNode for ComputedPropName

Source§

const TYPE: &'static str = "Computed"

Source§

impl AstNode for CondExpr

Source§

const TYPE: &'static str = "ConditionalExpression"

Source§

impl AstNode for Constructor

Source§

const TYPE: &'static str = "Constructor"

Source§

impl AstNode for ContinueStmt

Source§

const TYPE: &'static str = "ContinueStatement"

Source§

impl AstNode for DebuggerStmt

Source§

const TYPE: &'static str = "DebuggerStatement"

Source§

impl AstNode for Decorator

Source§

const TYPE: &'static str = "Decorator"

Source§

impl AstNode for DoWhileStmt

Source§

const TYPE: &'static str = "DoWhileStatement"

Source§

impl AstNode for EmptyStmt

Source§

const TYPE: &'static str = "EmptyStatement"

Source§

impl AstNode for ExportAll

Source§

const TYPE: &'static str = "ExportAllDeclaration"

Source§

impl AstNode for ExportDecl

Source§

const TYPE: &'static str = "ExportDeclaration"

Source§

impl AstNode for ExportDefaultDecl

Source§

const TYPE: &'static str = "ExportDefaultDeclaration"

Source§

impl AstNode for ExportDefaultExpr

Source§

const TYPE: &'static str = "ExportDefaultExpression"

Source§

impl AstNode for ExportDefaultSpecifier

Source§

const TYPE: &'static str = "ExportDefaultSpecifier"

Source§

impl AstNode for ExportNamedSpecifier

Source§

const TYPE: &'static str = "ExportSpecifier"

Source§

impl AstNode for ExportNamespaceSpecifier

Source§

const TYPE: &'static str = "ExportNamespaceSpecifier"

Source§

impl AstNode for ExprStmt

Source§

const TYPE: &'static str = "ExpressionStatement"

Source§

impl AstNode for FnDecl

Source§

const TYPE: &'static str = "FunctionDeclaration"

Source§

impl AstNode for FnExpr

Source§

const TYPE: &'static str = "FunctionExpression"

Source§

impl AstNode for ForInStmt

Source§

const TYPE: &'static str = "ForInStatement"

Source§

impl AstNode for ForOfStmt

Source§

const TYPE: &'static str = "ForOfStatement"

Source§

impl AstNode for ForStmt

Source§

const TYPE: &'static str = "ForStatement"

Source§

impl AstNode for GetterProp

Source§

const TYPE: &'static str = "GetterProperty"

Source§

impl AstNode for Ident

Source§

const TYPE: &'static str = "Identifier"

Source§

impl AstNode for IdentName

Source§

const TYPE: &'static str = "Identifier"

Source§

impl AstNode for IfStmt

Source§

const TYPE: &'static str = "IfStatement"

Source§

impl AstNode for Import

Source§

const TYPE: &'static str = "Import"

Source§

impl AstNode for ImportDecl

Source§

const TYPE: &'static str = "ImportDeclaration"

Source§

impl AstNode for ImportDefaultSpecifier

Source§

const TYPE: &'static str = "ImportDefaultSpecifier"

Source§

impl AstNode for ImportNamedSpecifier

Source§

const TYPE: &'static str = "ImportSpecifier"

Source§

impl AstNode for ImportStarAsSpecifier

Source§

const TYPE: &'static str = "ImportNamespaceSpecifier"

Source§

impl AstNode for Invalid

Source§

const TYPE: &'static str = "Invalid"

Source§

impl AstNode for JSXAttr

Source§

const TYPE: &'static str = "JSXAttribute"

Source§

impl AstNode for JSXClosingElement

Source§

const TYPE: &'static str = "JSXClosingElement"

Source§

impl AstNode for JSXClosingFragment

Source§

const TYPE: &'static str = "JSXClosingFragment"

Source§

impl AstNode for JSXElement

Source§

const TYPE: &'static str = "JSXElement"

Source§

impl AstNode for JSXEmptyExpr

Source§

const TYPE: &'static str = "JSXEmptyExpression"

Source§

impl AstNode for JSXExprContainer

Source§

const TYPE: &'static str = "JSXExpressionContainer"

Source§

impl AstNode for JSXFragment

Source§

const TYPE: &'static str = "JSXFragment"

Source§

impl AstNode for JSXMemberExpr

Source§

const TYPE: &'static str = "JSXMemberExpression"

Source§

impl AstNode for JSXNamespacedName

Source§

const TYPE: &'static str = "JSXNamespacedName"

Source§

impl AstNode for JSXOpeningElement

Source§

const TYPE: &'static str = "JSXOpeningElement"

Source§

impl AstNode for JSXOpeningFragment

Source§

const TYPE: &'static str = "JSXOpeningFragment"

Source§

impl AstNode for JSXSpreadChild

Source§

const TYPE: &'static str = "JSXSpreadChild"

Source§

impl AstNode for JSXText

Source§

const TYPE: &'static str = "JSXText"

Source§

impl AstNode for KeyValuePatProp

Source§

const TYPE: &'static str = "KeyValuePatternProperty"

Source§

impl AstNode for KeyValueProp

Source§

const TYPE: &'static str = "KeyValueProperty"

Source§

impl AstNode for LabeledStmt

Source§

const TYPE: &'static str = "LabeledStatement"

Source§

impl AstNode for MemberExpr

Source§

const TYPE: &'static str = "MemberExpression"

Source§

impl AstNode for MetaPropExpr

Source§

const TYPE: &'static str = "MetaProperty"

Source§

impl AstNode for MethodProp

Source§

const TYPE: &'static str = "MethodProperty"

Source§

impl AstNode for Module

Source§

const TYPE: &'static str = "Module"

Source§

impl AstNode for NamedExport

Source§

const TYPE: &'static str = "ExportNamedDeclaration"

Source§

impl AstNode for NewExpr

Source§

const TYPE: &'static str = "NewExpression"

Source§

impl AstNode for Null

Source§

const TYPE: &'static str = "NullLiteral"

Source§

impl AstNode for Number

Source§

const TYPE: &'static str = "NumericLiteral"

Source§

impl AstNode for ObjectLit

Source§

const TYPE: &'static str = "ObjectExpression"

Source§

impl AstNode for ObjectPat

Source§

const TYPE: &'static str = "ObjectPattern"

Source§

impl AstNode for OptCall

Source§

const TYPE: &'static str = "CallExpression"

Source§

impl AstNode for OptChainExpr

Source§

const TYPE: &'static str = "OptionalChainingExpression"

Source§

impl AstNode for Param

Source§

const TYPE: &'static str = "Parameter"

Source§

impl AstNode for ParenExpr

Source§

const TYPE: &'static str = "ParenthesisExpression"

Source§

impl AstNode for PrivateMethod

Source§

const TYPE: &'static str = "PrivateMethod"

Source§

impl AstNode for PrivateName

Source§

const TYPE: &'static str = "PrivateName"

Source§

impl AstNode for PrivateProp

Source§

const TYPE: &'static str = "PrivateProperty"

Source§

impl AstNode for Regex

Source§

const TYPE: &'static str = "RegExpLiteral"

Source§

impl AstNode for RestPat

Source§

const TYPE: &'static str = "RestElement"

Source§

impl AstNode for ReturnStmt

Source§

const TYPE: &'static str = "ReturnStatement"

Source§

impl AstNode for Script

Source§

const TYPE: &'static str = "Script"

Source§

impl AstNode for SeqExpr

Source§

const TYPE: &'static str = "SequenceExpression"

Source§

impl AstNode for SetterProp

Source§

const TYPE: &'static str = "SetterProperty"

Source§

impl AstNode for SpreadElement

Source§

const TYPE: &'static str = "SpreadElement"

Source§

impl AstNode for StaticBlock

Source§

const TYPE: &'static str = "StaticBlock"

Source§

impl AstNode for Str

Source§

const TYPE: &'static str = "StringLiteral"

Source§

impl AstNode for Super

Source§

const TYPE: &'static str = "Super"

Source§

impl AstNode for SuperPropExpr

Source§

const TYPE: &'static str = "SuperPropExpression"

Source§

impl AstNode for SwitchCase

Source§

const TYPE: &'static str = "SwitchCase"

Source§

impl AstNode for SwitchStmt

Source§

const TYPE: &'static str = "SwitchStatement"

Source§

impl AstNode for TaggedTpl

Source§

const TYPE: &'static str = "TaggedTemplateExpression"

Source§

impl AstNode for ThisExpr

Source§

const TYPE: &'static str = "ThisExpression"

Source§

impl AstNode for ThrowStmt

Source§

const TYPE: &'static str = "ThrowStatement"

Source§

impl AstNode for Tpl

Source§

const TYPE: &'static str = "TemplateLiteral"

Source§

impl AstNode for TplElement

Source§

const TYPE: &'static str = "TemplateElement"

Source§

impl AstNode for TryStmt

Source§

const TYPE: &'static str = "TryStatement"

Source§

impl AstNode for TsArrayType

Source§

const TYPE: &'static str = "TsArrayType"

Source§

impl AstNode for TsAsExpr

Source§

const TYPE: &'static str = "TsAsExpression"

Source§

impl AstNode for TsCallSignatureDecl

Source§

const TYPE: &'static str = "TsCallSignatureDeclaration"

Source§

impl AstNode for TsConditionalType

Source§

const TYPE: &'static str = "TsConditionalType"

Source§

impl AstNode for TsConstAssertion

Source§

const TYPE: &'static str = "TsConstAssertion"

Source§

impl AstNode for TsConstructSignatureDecl

Source§

const TYPE: &'static str = "TsConstructSignatureDeclaration"

Source§

impl AstNode for TsConstructorType

Source§

const TYPE: &'static str = "TsConstructorType"

Source§

impl AstNode for TsEnumDecl

Source§

const TYPE: &'static str = "TsEnumDeclaration"

Source§

impl AstNode for TsEnumMember

Source§

const TYPE: &'static str = "TsEnumMember"

Source§

impl AstNode for TsExportAssignment

Source§

const TYPE: &'static str = "TsExportAssignment"

Source§

impl AstNode for TsExprWithTypeArgs

Source§

const TYPE: &'static str = "TsExpressionWithTypeArguments"

Source§

impl AstNode for TsExternalModuleRef

Source§

const TYPE: &'static str = "TsExternalModuleReference"

Source§

impl AstNode for TsFnType

Source§

const TYPE: &'static str = "TsFunctionType"

Source§

impl AstNode for TsGetterSignature

Source§

const TYPE: &'static str = "TsGetterSignature"

Source§

impl AstNode for TsImportCallOptions

Source§

const TYPE: &'static str = "TsImportCallOptions"

Source§

impl AstNode for TsImportEqualsDecl

Source§

const TYPE: &'static str = "TsImportEqualsDeclaration"

Source§

impl AstNode for TsImportType

Source§

const TYPE: &'static str = "TsImportType"

Source§

impl AstNode for TsIndexSignature

Source§

const TYPE: &'static str = "TsIndexSignature"

Source§

impl AstNode for TsIndexedAccessType

Source§

const TYPE: &'static str = "TsIndexedAccessType"

Source§

impl AstNode for TsInferType

Source§

const TYPE: &'static str = "TsInferType"

Source§

impl AstNode for TsInstantiation

Source§

const TYPE: &'static str = "TsInstantiation"

Source§

impl AstNode for TsInterfaceBody

Source§

const TYPE: &'static str = "TsInterfaceBody"

Source§

impl AstNode for TsInterfaceDecl

Source§

const TYPE: &'static str = "TsInterfaceDeclaration"

Source§

impl AstNode for TsIntersectionType

Source§

const TYPE: &'static str = "TsIntersectionType"

Source§

impl AstNode for TsKeywordType

Source§

const TYPE: &'static str = "TsKeywordType"

Source§

impl AstNode for TsLitType

Source§

const TYPE: &'static str = "TsLiteralType"

Source§

impl AstNode for TsMappedType

Source§

const TYPE: &'static str = "TsMappedType"

Source§

impl AstNode for TsMethodSignature

Source§

const TYPE: &'static str = "TsMethodSignature"

Source§

impl AstNode for TsModuleBlock

Source§

const TYPE: &'static str = "TsModuleBlock"

Source§

impl AstNode for TsModuleDecl

Source§

const TYPE: &'static str = "TsModuleDeclaration"

Source§

impl AstNode for TsNamespaceDecl

Source§

const TYPE: &'static str = "TsNamespaceDeclaration"

Source§

impl AstNode for TsNamespaceExportDecl

Source§

const TYPE: &'static str = "TsNamespaceExportDeclaration"

Source§

impl AstNode for TsNonNullExpr

Source§

const TYPE: &'static str = "TsNonNullExpression"

Source§

impl AstNode for TsOptionalType

Source§

const TYPE: &'static str = "TsOptionalType"

Source§

impl AstNode for TsParamProp

Source§

const TYPE: &'static str = "TsParameterProperty"

Source§

impl AstNode for TsParenthesizedType

Source§

const TYPE: &'static str = "TsParenthesizedType"

Source§

impl AstNode for TsPropertySignature

Source§

const TYPE: &'static str = "TsPropertySignature"

Source§

impl AstNode for TsQualifiedName

Source§

const TYPE: &'static str = "TsQualifiedName"

Source§

impl AstNode for TsRestType

Source§

const TYPE: &'static str = "TsRestType"

Source§

impl AstNode for TsSatisfiesExpr

Source§

const TYPE: &'static str = "TsSatisfiesExpression"

Source§

impl AstNode for TsSetterSignature

Source§

const TYPE: &'static str = "TsSetterSignature"

Source§

impl AstNode for TsThisType

Source§

const TYPE: &'static str = "TsThisType"

Source§

impl AstNode for TsTplLitType

Source§

const TYPE: &'static str = "TemplateLiteral"

Source§

impl AstNode for TsTupleElement

Source§

const TYPE: &'static str = "TsTupleElement"

Source§

impl AstNode for TsTupleType

Source§

const TYPE: &'static str = "TsTupleType"

Source§

impl AstNode for TsTypeAliasDecl

Source§

const TYPE: &'static str = "TsTypeAliasDeclaration"

Source§

impl AstNode for TsTypeAnn

Source§

const TYPE: &'static str = "TsTypeAnnotation"

Source§

impl AstNode for TsTypeAssertion

Source§

const TYPE: &'static str = "TsTypeAssertion"

Source§

impl AstNode for TsTypeLit

Source§

const TYPE: &'static str = "TsTypeLiteral"

Source§

impl AstNode for TsTypeOperator

Source§

const TYPE: &'static str = "TsTypeOperator"

Source§

impl AstNode for TsTypeParam

Source§

const TYPE: &'static str = "TsTypeParameter"

Source§

impl AstNode for TsTypeParamDecl

Source§

const TYPE: &'static str = "TsTypeParameterDeclaration"

Source§

impl AstNode for TsTypeParamInstantiation

Source§

const TYPE: &'static str = "TsTypeParameterInstantiation"

Source§

impl AstNode for TsTypePredicate

Source§

const TYPE: &'static str = "TsTypePredicate"

Source§

impl AstNode for TsTypeQuery

Source§

const TYPE: &'static str = "TsTypeQuery"

Source§

impl AstNode for TsTypeRef

Source§

const TYPE: &'static str = "TsTypeReference"

Source§

impl AstNode for TsUnionType

Source§

const TYPE: &'static str = "TsUnionType"

Source§

impl AstNode for UnaryExpr

Source§

const TYPE: &'static str = "UnaryExpression"

Source§

impl AstNode for UpdateExpr

Source§

const TYPE: &'static str = "UpdateExpression"

Source§

impl AstNode for UsingDecl

Source§

const TYPE: &'static str = "UsingDeclaration"

Source§

impl AstNode for VarDecl

Source§

const TYPE: &'static str = "VariableDeclaration"

Source§

impl AstNode for VarDeclarator

Source§

const TYPE: &'static str = "VariableDeclarator"

Source§

impl AstNode for WhileStmt

Source§

const TYPE: &'static str = "WhileStatement"

Source§

impl AstNode for WithStmt

Source§

const TYPE: &'static str = "WithStatement"

Source§

impl AstNode for YieldExpr

Source§

const TYPE: &'static str = "YieldExpression"