PreviousUpNext

14.5.36  Stampmapstack

The compiler Stampmapstack 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 Stampmapstack api is implemented by the stampmapstack package.

The Stampmapstack api source code is in src/lib/compiler/front/typer-stuff/modules/stampmapstack.pkg.

See also: Module_Junk.

See also: Type_Package_Language.

The above information is manually maintained and may contain errors.

api {
    Typestamp;
    Apistamp;
    Packagestamp;
    Genericstamp;
    Typerstorestamp;
    typestamp_of : type_declaration_types::Sumtype_Record -> Typestamp;
    apistamp_of : module_level_declarations::Api_Record -> Apistamp;
    packagestamp_of : module_level_declarations::Package_Record -> Packagestamp;
    genericstamp_of : module_level_declarations::Generic_Record -> Genericstamp;
    typerstorestamp_of : module_level_declarations::Typerstore_Record -> Typerstorestamp;
        make_packagestamp :
            (module_level_declarations::Api_Record , module_level_declarations::Typechecked_Package)
            ->
            Packagestamp;
        make_genericstamp :
            (module_level_declarations::Generic_Api , module_level_declarations::Typechecked_Generic)
            ->
            Genericstamp;
    typestamp_is_fresh : Typestamp -> Bool;
    apistamp_is_fresh : Apistamp -> Bool;
    packagestamp_is_fresh : Packagestamp -> Bool;
    genericstamp_is_fresh : Genericstamp -> Bool;
    typerstorestamp_is_fresh : Typerstorestamp -> Bool;
    typestamp_of' : type_declaration_types::Type -> Typestamp;
    Stampmapstack;
    empty_stampmapstack : Stampmapstack;
        find_sumtype_record_by_typestamp :
        (Stampmapstack , Typestamp) -> Null_Or(type_declaration_types::Sumtype_Record );
        find_api_record_by_apistamp :
        (Stampmapstack , Apistamp) -> Null_Or(module_level_declarations::Api_Record );
        find_typechecked_package_by_packagestamp :
        (Stampmapstack , Packagestamp) -> Null_Or(module_level_declarations::Typechecked_Package );
        find_typechecked_generic_by_genericstamp :
        (Stampmapstack , Genericstamp) -> Null_Or(module_level_declarations::Typechecked_Generic );
        find_typerstore_record_by_typerstorestamp :
        (Stampmapstack , Typerstorestamp) -> Null_Or(module_level_declarations::Typerstore_Record );
        enter_sumtype_record_by_typestamp :
        (Stampmapstack , Typestamp , type_declaration_types::Sumtype_Record) -> Stampmapstack;
        enter_api_record_by_apistamp :
        (Stampmapstack , Apistamp , module_level_declarations::Api_Record) -> Stampmapstack;
        enter_typechecked_package_by_packagestamp :
        (Stampmapstack , Packagestamp , module_level_declarations::Typechecked_Package) -> Stampmapstack;
        enter_typechecked_generic_by_genericstamp :
        (Stampmapstack , Genericstamp , module_level_declarations::Typechecked_Generic) -> Stampmapstack;
        enter_typerstore_record_by_typerstorestamp :
        (Stampmapstack , Typerstorestamp , module_level_declarations::Typerstore_Record) -> Stampmapstack;
    Stampmapstackx X;
    stampmapstackx : Stampmapstackx(X );
    find_x_by_typestamp : (Stampmapstackx(X ) , Typestamp) -> Null_Or(X );
    find_x_by_apistamp : (Stampmapstackx(X ) , Apistamp) -> Null_Or(X );
    find_x_by_packagestamp : (Stampmapstackx(X ) , Packagestamp) -> Null_Or(X );
    find_x_by_genericstamp : (Stampmapstackx(X ) , Genericstamp) -> Null_Or(X );
    find_x_by_typerstorestamp : (Stampmapstackx(X ) , Typerstorestamp) -> Null_Or(X );
    enter_x_by_typestamp : (Stampmapstackx(X ) , Typestamp , X) -> Stampmapstackx(X );
    enter_x_by_apistamp : (Stampmapstackx(X ) , Apistamp , X) -> Stampmapstackx(X );
    enter_x_by_packagestamp : (Stampmapstackx(X ) , Packagestamp , X) -> Stampmapstackx(X );
    enter_x_by_genericstamp : (Stampmapstackx(X ) , Genericstamp , X) -> Stampmapstackx(X );
    enter_x_by_typerstorestamp : (Stampmapstackx(X ) , Typerstorestamp , X) -> Stampmapstackx(X );};


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext