Crate mun_hir[−][src]
HIR provides high-level, object-oriented access to Mun code. It is constructed by first parsing Mun code with the mun_syntax crate and then it is lowered into HIR constructs, names are resolved, and type checking is performed. HIR is the input for both the compiler as well as the language server.
Re-exports
pub use salsa; |
pub use crate::diagnostics::Diagnostic; |
pub use crate::diagnostics::DiagnosticSink; |
Modules
diagnostics | |
fixture | |
line_index | |
semantics |
|
with_fixture |
Macros
name | |
ty_app |
Structs
ApplicationTy | A nominal type with (maybe 0) type parameters. This might be a primitive
type like |
AstDatabaseStorage | Representative struct for the query group. |
Body | The body of an item (function, const etc.). |
DefDatabaseStorage | Representative struct for the query group. |
ExprScopes | |
Field | A field of a |
FileId |
|
FloatTy | |
Function | |
FunctionData | |
HirDatabaseStorage | Representative struct for the query group. |
InFile |
|
InferenceResult | The result of type inference: A mapping from expressions and patterns to types. |
IntTy | |
InternDatabaseStorage | Representative struct for the query group. |
ItemLoc | |
Module | |
ModuleId | Represents an id of a module inside a package. |
Name |
|
Package | A |
PackageId | Represents the id of a single package, all packages have a unique id, the main package and all dependent packages. |
PackageSet | Represents information about a set of packages in a compilation |
Path | |
PerNs | |
RecordLitField | |
Resolver | |
SourceDatabaseStorage | Representative struct for the query group. |
SourceRoot | |
SourceRootId | Files are grouped into source roots. A source root is a directory on the file systems which is watched for changes. Typically it corresponds to a single library. |
Struct | |
TypeAlias |
Enums
ArithOp | |
BinaryOp | |
CallableDef | |
CmpOp | |
Expr | |
FloatBitness | |
IntBitness | |
Literal | |
LogicOp | |
ModuleDef | |
Ordering | |
Pat | Similar to |
PathKind | |
Signedness | |
Statement | |
StructMemoryKind | Represents the kind of memory management a struct uses. |
Ty | This should be cheap to clone. |
TypeCtor | A type constructor or type name: this might be something like the primitive
type |
TypeNs | |
UnaryOp | |
ValueNs | |
Visibility | Visibility of an item, modules resolved. |
Traits
AstDatabase | The |
DefDatabase | |
HasSource | A trait implemented for items that can be related back to their source. The
|
HasVisibility | |
HirDatabase | |
HirDisplay | |
InternDatabase | The |
ResolveBitness | |
SourceDatabase | Database which stores all significant input facts: source code and project model. |
Upcast |
Functions
resolver_for_expr | Returns a resolver applicable to the specified expression |
resolver_for_scope |
Type Definitions
ExprId | |
PatId |