## compiler-mapstack-set.api
# Compiled by:
#
src/lib/compiler/core.sublib### "You have enemies? Good. That means
### that you've stood up for something,
### sometime in your life."
###
### -- Winston Churchill
stipulate
package syx = symbolmapstack; # symbolmapstack is from
src/lib/compiler/front/typer-stuff/symbolmapstack/symbolmapstack.pkgherein
api Compiler_Mapstack_Set {
#
# Symbolmapstack;
Linking_Mapstack;
Inlining_Mapstack;
Compiler_Mapstack_Set
# = { symbolmapstack: syx::Symbolmapstack,
# linking_mapstack: Linking_Mapstack,
# inlining_mapstack: Inlining_Mapstack
# }
;
Symbol # = symbol::Symbol
;
null_compiler_mapstack_set: Compiler_Mapstack_Set;
symbolmapstack_part: Compiler_Mapstack_Set -> syx::Symbolmapstack;
linking_part: Compiler_Mapstack_Set -> Linking_Mapstack;
inlining_part: Compiler_Mapstack_Set -> Inlining_Mapstack;
make_compiler_mapstack_set
:
{ symbolmapstack: syx::Symbolmapstack,
linking_mapstack: Linking_Mapstack,
inlining_mapstack: Inlining_Mapstack
}
->
Compiler_Mapstack_Set;
layer_compiler_mapstack_sets: (Compiler_Mapstack_Set, Compiler_Mapstack_Set) -> Compiler_Mapstack_Set;
concatenate_compiler_mapstack_sets: (Compiler_Mapstack_Set, Compiler_Mapstack_Set) -> Compiler_Mapstack_Set;
layer_symbolmapstack: (syx::Symbolmapstack, syx::Symbolmapstack) -> syx::Symbolmapstack;
layer_inlining_mapstack: (Inlining_Mapstack, Inlining_Mapstack) -> Inlining_Mapstack;
filter_compiler_mapstack_set: (Compiler_Mapstack_Set, List( symbol::Symbol )) -> Compiler_Mapstack_Set;
# my filterSymbolmapstack: syx::Symbolmapstack * List( symbol::Symbol ) -> syx::Symbolmapstack
consolidate_compiler_mapstack_set: Compiler_Mapstack_Set -> Compiler_Mapstack_Set;
consolidate_symbolmapstack: syx::Symbolmapstack -> syx::Symbolmapstack;
consolidate_inlining_mapstack: Inlining_Mapstack -> Inlining_Mapstack;
# Reduce linking and inlining part to what's actually needed:
#
trim_compiler_mapstack_set
:
Compiler_Mapstack_Set -> Compiler_Mapstack_Set;
describe
:
syx::Symbolmapstack -> symbol::Symbol -> Void;
base_types_and_ops_symbolmapstack: syx::Symbolmapstack;
}; # api Compiler_Mapstack_Set
end;
## Copyright 1989 by AT&T Bell Laboratories
## Subsequent changes by Jeff Prothero Copyright (c) 2010-2015,
## released per terms of SMLNJ-COPYRIGHT.