l0_resolve namespace

Classes

class ResolveErrorKind
Kinds of errors that can occur during symbol resolution.
class SymbolResolution
The result of a symbol resolution attempt.
class TypeResolution
The result of a type reference resolution attempt.
class TypeResolveErrorKind
Kinds of errors that can occur during type resolution.

Functions

auto _is_imported(ModuleEnv current_env, str module_name) -> bool
Check if a module is explicitly imported by the current environment.
auto resolve_symbol(Dict module_envs[str, ModuleEnv], str current_module, str name, Optional] module_path[List[str] = None, *bool require_import = True) -> SymbolResolution
Resolve a symbol by name, optionally qualified by module path.
auto resolve_type_ref(Dict module_envs[str, ModuleEnv], str current_module, TypeRef tref, Optional] module_path[List[str] = None, * Optional[Callable[[Symbol], Optional]] resolve_alias[Type] = None, bool require_import = True) -> TypeResolution
Resolve an AST TypeRef into a semantic Type.

Function documentation

bool l0_resolve::_is_imported(ModuleEnv current_env, str module_name) protected

Check if a module is explicitly imported by the current environment.

SymbolResolution l0_resolve::resolve_symbol(Dict module_envs[str, ModuleEnv], str current_module, str name, Optional] module_path[List[str] = None, *bool require_import = True)

Resolve a symbol by name, optionally qualified by module path.

Parameters
module_envs The mapping of module names to their environments.
current_module The name of the module performing the lookup.
name The name of the symbol to resolve.
module_path Optional list of module components for qualified names.
require_import Whether to require an explicit import for qualified lookups.
Returns A SymbolResolution object containing the result or error information.

TypeResolution l0_resolve::resolve_type_ref(Dict module_envs[str, ModuleEnv], str current_module, TypeRef tref, Optional] module_path[List[str] = None, * Optional[Callable[[Symbol], Optional]] resolve_alias[Type] = None, bool require_import = True)

Resolve an AST TypeRef into a semantic Type.

Parameters
module_envs The mapping of module names to their environments.
current_module The name of the module performing the resolution.
tref The TypeRef AST node.
module_path Optional list of module components for qualified types.
Optional
resolve_alias Optional callback to resolve type aliases.
require_import Whether to require an explicit import for qualified lookups.
Returns A TypeResolution object containing the result or error information.