PreviousUpNext

14.5.43  Symbolmapstack

The standard library Symbolmapstack api defines access to one of the three core compiler state tables, the other two being Linking_Mapstack and Inlining_Mapstack.

The Symbolmapstack api is implemented by the symbolmapstack package.

The Symbolmapstack api source code is in src/lib/compiler/front/typer-stuff/symbolmapstack/symbolmapstack.api.

The above information is manually maintained and may contain errors.

api {
    Symbolmapstack;
    Entry  = symbolmapstack_entry::Symbolmapstack_Entry;
    Full_Entry  = {entry:Entry, modtree:Null_Or(module_level_declarations::Modtree )};
    exception UNBOUND;
    empty : Symbolmapstack;
    get : (Symbolmapstack , symbol::Symbol) -> Entry;
    bind : (symbol::Symbol , Entry , Symbolmapstack) -> Symbolmapstack;
    special : ((symbol::Symbol -> Entry) , (Void -> List(symbol::Symbol ))) -> Symbolmapstack;
    atop : (Symbolmapstack , Symbolmapstack) -> Symbolmapstack;
    consolidate : Symbolmapstack -> Symbolmapstack;
    consolidate_lazy : Symbolmapstack -> Symbolmapstack;
    apply : ((symbol::Symbol , Entry) -> Void) -> Symbolmapstack -> Void;
    map : (Entry -> Entry) -> Symbolmapstack -> Symbolmapstack;
    fold : ((((symbol::Symbol , Entry)) , X) -> X) -> X -> Symbolmapstack -> X;
    fold_full_entries : ((((symbol::Symbol , Full_Entry)) , X) -> X) -> X -> Symbolmapstack -> X;
    to_sorted_list : Symbolmapstack -> List(((symbol::Symbol , Entry)) );
    bind_full_entry : (symbol::Symbol , Full_Entry , Symbolmapstack) -> Symbolmapstack;
    symbols : Symbolmapstack -> List(symbol::Symbol );
    filter : (Symbolmapstack , List(symbol::Symbol )) -> Symbolmapstack;};


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext