


The compiler Module_Junk api defines access to functionality tracking modules in the compilation process. (In this context, a “module” is essentially what you get from compiling one sourcefile.)
The Module_Junk api is implemented by the module_junk package.
The Module_Junk api source code is in src/lib/compiler/front/typer-stuff/modules/module-junk.api.
See also: Type_Package_Language.
The above information is manually maintained and may contain errors.
api { exception UNBOUND symbol::Symbol;
get_api_element : (module_level_declarations::Api_Elements , symbol::Symbol)
-> module_level_declarations::Api_Element;
get_api_element_variable : module_level_declarations::Api_Element
-> Null_Or(stamp::Stamp );
package_definition_to_package : (module_level_declarations::Package_Definition
, module_level_declarations::Typerstore)
-> module_level_declarations::Package;
get_typ : (module_level_declarations::Api_Elements
, module_level_declarations::Typerstore , symbol::Symbol)
-> (types::Typ , stamp::Stamp);
get_package : (module_level_declarations::Api_Elements
, module_level_declarations::Typerstore , symbol::Symbol
, varhome::Varhome
, inlining_information::Inlining_Information)
-> (module_level_declarations::Package , stamp::Stamp);
get_generic : (module_level_declarations::Api_Elements
, module_level_declarations::Typerstore , symbol::Symbol
, varhome::Varhome
, inlining_information::Inlining_Information)
-> (module_level_declarations::Generic , stamp::Stamp);
get_package_stamp : module_level_declarations::Package -> stamp::Stamp;
get_package_name : module_level_declarations::Package
-> ?.inverse_path::Inverse_Path;
get_packages : module_level_declarations::Package
-> List(module_level_declarations::Package );
get_typs : module_level_declarations::Package -> List(types::Typ );
get_package_symbols : module_level_declarations::Package
-> List(symbol::Symbol );
get_package_via_path : (module_level_declarations::Package
, symbol_path::Symbol_Path , symbol_path::Symbol_Path)
-> module_level_declarations::Package;
get_package_definition_via_path : (module_level_declarations::Package
, symbol_path::Symbol_Path , symbol_path::Symbol_Path)
-> module_level_declarations::Package_Definition;
get_generic_via_path : (module_level_declarations::Package
, symbol_path::Symbol_Path , symbol_path::Symbol_Path)
-> module_level_declarations::Generic;
get_typ_via_path : (module_level_declarations::Package
, symbol_path::Symbol_Path , symbol_path::Symbol_Path)
-> types::Typ;
get_value_via_path : (module_level_declarations::Package
, symbol_path::Symbol_Path , symbol_path::Symbol_Path)
-> variables_and_constructors::Variable_Or_Constructor;
check_path_sig : (module_level_declarations::Api , symbol_path::Symbol_Path)
-> Null_Or(symbol::Symbol );
apis_equal : (module_level_declarations::Api
, module_level_declarations::Api)
-> Bool;
eq_origin : (module_level_declarations::Package
, module_level_declarations::Package)
-> Bool;
typestamp_of : types::Typ -> stampmapstack::Typestamp;
packagestamp_of : module_level_declarations::Package
-> stampmapstack::Packagestamp;
genericstamp_of : module_level_declarations::Generic
-> stampmapstack::Genericstamp;
make_packagestamp : (module_level_declarations::Api
, module_level_declarations::Typechecked_Package)
-> stampmapstack::Packagestamp;
make_genericstamp : (module_level_declarations::Generic_Api
, module_level_declarations::Typechecked_Generic)
-> stampmapstack::Genericstamp;
translate_typ : module_level_declarations::Typerstore
-> types::Typ -> types::Typ;
translate_type : module_level_declarations::Typerstore
-> types::Type -> types::Type;
relativize_typ : ?.stamppath_context::Context
-> types::Typ -> (types::Typ , Bool);
relativize_type : ?.stamppath_context::Context
-> types::Type -> (types::Type , Bool);
include_package : (symbolmapstack::Symbolmapstack
, module_level_declarations::Package)
-> symbolmapstack::Symbolmapstack;
extract_inlining_info : symbolmapstack_entry::Symbolmapstack_Entry
-> inlining_information::Inlining_Information;
get_api_symbols : module_level_declarations::Api -> List(symbol::Symbol );
get_api_names : module_level_declarations::Package
-> List(symbol::Symbol );
debugging : Ref(Bool );
};


