Crate spade_hir

Source

Re-exports§

pub use expression::Argument;
pub use expression::ArgumentKind;
pub use expression::ArgumentList;
pub use expression::ExprKind;
pub use expression::Expression;

Modules§

expression
param_util
symbol_table
testutil

Macros§

dtype
A declared type. The type name is the name as declared in the symtab which must be in scope with the name symtab
hparams

Structs§

AttributeList
Binding
Block
Representation of the language with most language constructs still present, with more correctness guaranatees than the AST, such as types actually existing.
ConstGenericWithId
Enum
Declaration of an enum
ImplBlock
ItemList
A list of all the items present in the whole AST, flattened to remove module hierarchies.
Module
Parameter
ParameterList
Pattern
PatternArgument
Register
Struct
TraitDef
TraitSpec
A specification of a trait with type parameters
TypeDeclaration
A declaration of a new type
TypeParam
Type params have both an identifier and a NameID since they go through the ast lowering process in a few separate steps, and the identifier needs to be re-added to the symtab multiple times
Unit
UnitHead
WalTrace
WalTraceable

Enums§

Attribute
Attributes that are still present as attributes in the HIR. Not all AST attributes are in this list, as some are consumed and inlined into the corresponding ast node
ConstGeneric
ExecutableItem
Items which have associated code that can be executed. This is different from type declarations which are items, but which do not have code on their own
FunctionKind
ImplTarget
Item
PatternKind
PipelineRegMarkerExtra
Statement
TraitName
TypeDeclKind
TypeExpression
TypeSpec
A specification of a type to be used. For example, the types of input/output arguments the type of fields in a struct etc.
UnitKind
UnitName
WhereClause

Type Aliases§

TypeList