uses SyntaxParser
uses data.String
uses OpParser
data StoreVar nocycle {
const byte AC_LOCAL = 1
const byte AC_STORE = 2
char name[]
char type[]
int index
//class is one of AC_LOCAL or AC_STORE
byte class
bool regraded
}
data StoreFunction nocycle {
char name[]
char implName[]
char intfName[]
StoreVar locals[]
}
data StoreObject nocycle {
StoreFunction functions[]
}
data StoreAnalysis nocycle {
StoreObject objects[]
OpParseError errors[]
OpParseError warnings[]
}
//this API takes a set of functions and determines the local/store classification of each of their parameters and local variables
// - the result should be used to determine the register flags imposed upon access of each variable in each function
interface StoreAnalyser {
OpToken getOriginLocal(OpToken t, DanaType types[])
StoreAnalysis analyse(char file[], ProvidedObject objects[], DanaType types[])
}
To propose a new revision to this entity, use dana source put -ut your/new/version.dn -n util.compiler.StoreAnalyser -m "reason for update" -u yourUsername
Version 1 (this version) by barry
Notes for this version: API to support redesigned 'store' concept.