Module ast

Source
Expand description

A representation of the Abstract Syntax Tree of a Rust program, with all the added metadata necessary to generate Wasm bindings for it.

Structs§

Enum
The metadata for an Enum
Export
A rust to js interface. Allows interaction with rust objects/functions from javascript.
Function
Information about a function being imported or exported
FunctionArgumentData
Information about a function’s argument
FunctionReturnData
Information about a function’s return
Import
Things imported from a JS module (in an extern block)
ImportFunction
A function being imported from JS
ImportStatic
The type of a static being imported
ImportString
The type of a static string being imported
ImportType
The metadata for a type being imported
LinkToModule
An abstract syntax tree representing a link to a module in Rust. In contrast to Program, LinkToModule must expand to an expression. linked_modules of the inner Program must contain exactly one element whose link is produced by the expression.
Operation
The operation performed by a class method
Program
An abstract syntax tree representing a rust program. Contains extra information for joining up this rust code with javascript.
StringEnum
The metadata for a String Enum
Struct
Information about a Struct being exported
StructField
The field of a struct
Variant
The variant of an enum

Enums§

ImportFunctionKind
The type of a function being imported
ImportKind
The type of item being imported
ImportModule
The possible types of module to import from
LitOrExpr
An enum representing either a literal value (Lit) or an expression (syn::Expr).
MethodKind
The type of a method
MethodSelf
The 3 types variations of self.
OperationKind
The kind of operation performed by a method
ThreadLocal
Which version of the thread_local attribute is enabled.
TypeKind
Unused, the type of an argument to / return from a function
TypeLocation
Unused, the location of a type for a function argument (import/export, argument/ret)