SymbolTableΒΆ

forttyp.spad line 250

Create and manipulate a symbol table for generated FORTRAN code

coerce: % -> OutputForm
from CoercibleTo OutputForm
coerce: % -> Table(Symbol, FortranType)
coerce(x) returns a table view of x
declare!: (List Symbol, FortranType, %) -> FortranType
declare!(l, t, tab) creates new entrys in tab, declaring each of l to be of type t
declare!: (Symbol, FortranType, %) -> FortranType
declare!(u, t, tab) creates a new entry in tab, declaring u to be of type t
empty: () -> %
empty() returns a new, empty symbol table
externalList: % -> List Symbol
externalList(tab) returns a list of all the external symbols in tab
fortranTypeOf: (Symbol, %) -> FortranType
fortranTypeOf(u, tab) returns the type of u in tab
newTypeLists: % -> SExpression
newTypeLists(x) undocumented
parametersOf: % -> List Symbol
parametersOf(tab) returns a list of all the symbols declared in tab
printTypes: % -> Void
printTypes(tab) produces FORTRAN type declarations from tab, on the current FORTRAN output stream
symbolTable: List Record(key: Symbol, entry: FortranType) -> %
symbolTable(l) creates a symbol table from the elements of l.
typeList: (FortranScalarType, %) -> List Union(name: Symbol, bounds: List Union(S: Symbol, P: Polynomial Integer))
typeList(t, tab) returns a list of all the objects of type t in tab
typeLists: % -> List List Union(name: Symbol, bounds: List Union(S: Symbol, P: Polynomial Integer))
typeLists(tab) returns a list of lists of types of objects in tab

CoercibleTo OutputForm