ampersand-3.0.3: AmpersandData/FormalAmpersand/ASTInterface.ifc
CONTEXT "AST Interface" IN ENGLISH
INTERFACE Ampersand FOR Ampersand, Stef : I[SESSION];'_SESSION'
TABS[ Context : V[SESSION*Context]
COLS ["Name" : name
]
, "Patterns" : V[SESSION*Pattern]
COLS [ Pattern : name
, Purpose : purpose
, Rules : rules
, Declarations : declarations
]
, "Specializations" : V[SESSION*Gen]
COLS [ Generic : gengen
, Specific : genspc
]
, "Concepts" : V[SESSION*PlainConcept]
COLS [ Definition : cptdf
, Purpose : cptpurpose
, "Technical Type" : cpttp
]
, "Declarations" : V[SESSION*Declaration]
COLS [ Name : name
, sign : sign
, properties : decprps;declaredthrough
, pragmaL : decprL
, pragmaM : decprM
, pragmaR : decprR
, Meaning : decmean
, population : in~
]
, "Rules" : V[SESSION*Rule]
COLS [ Name : name
, sign : sign
, Expression : rrexp
, Meaning : rrmean
, Purpose : rrpurpose
, Property : declaredthrough
]
-- , "All plugs" : V[ONE*Context];
]
INTERFACE Atoms FOR Stef : I[SESSION];'_SESSION'
TABS[ Atoms : V[SESSION*Atom]
COLS [ "Atom" : I
, key : key
, atomvalue : atomvalue
]
, Pairs : V[SESSION*Pair]
COLS [ "Pair" : I
, l : l
, r : r
, in : in
]
, Relations : V[SESSION*Relation]
COLS [ "Relation" : I
, source : source
, target : target
]
, Concepts : V[SESSION*Concept]
COLS [ "Concept" : I
, name : name[PlainConcept*ConceptName]
]
]
INTERFACE Pattern FOR Ampersand : I[Pattern]
BOX [ Pattern : name
]
INTERFACE Concept FOR Ampersand : I[PlainConcept]
BOX [ Concept : name
, "atoms with this as type" : type~
]
INTERFACE Gen FOR Ampersand : I[Gen]
BOX [ gengen : gengen
, genspc : genspc
]
INTERFACE Declaration FOR Ampersand : I[Declaration]
BOX [ name : name
, sign : sign
, decprL : decprL
, decprM : decprM
, decprR : decprR
, meaning : decmean
, purpose : decpurpose
, population: in~
]
ENDCONTEXT