Adds diagnostics for a type, post semantic analysis of types.
Extracts the size of a fixed size array, or none if the size is missing. Reports an error if the
size is not a numeric literal.
Checks if there is at least one impl that can be inferred for a specific concrete trait.
Peels all wrapping Snapshot (@
) from the type.
Returns the number of peeled snapshots and the inner type.
Same as peel_snapshots
, but takes a TypeLongId
instead of a TypeId
.
Resolves a type given a module and a path. Used for resolving from non-statement context.
Resolves a type given a module and a path. statement_env
should be provided if called from
statement context.
Verifies that a given fixed size array size is within limits, and adds a diagnostic if not.
Wraps a type with Snapshot (@
) n_snapshots
times.