import edu.uci.eecs.codeGenerator.CodeAdditions.CodeAddition;
import edu.uci.eecs.specExtraction.Code;
import edu.uci.eecs.specExtraction.Construct;
+import edu.uci.eecs.specExtraction.DefineConstruct;
import edu.uci.eecs.specExtraction.EntryConstruct;
import edu.uci.eecs.specExtraction.InterfaceConstruct;
import edu.uci.eecs.specExtraction.OPConstruct;
// Extract all the additions
ArrayList<OPConstruct> OPList = extractor.OPListMap.get(file);
EntryConstruct entry = extractor.entryMap.get(file);
+ ArrayList<DefineConstruct> defineList = extractor.defineListMap
+ .get(file);
ArrayList<InterfaceConstruct> interfaceList = extractor.interfaceListMap
.get(file);
Code code = null;
addition = new CodeAddition(entry.beginLineNum, code);
additions.addCodeAddition(addition);
}
+ // For define constructs
+ if (defineList != null) {
+ for (DefineConstruct con : defineList) {
+ code = CodeGeneratorUtils.Generate4Define(con);
+ addition = new CodeAddition(con.endLineNum,
+ code);
+ additions.addCodeAddition(addition);
+ }
+ }
// For interface constructs
if (interfaceList != null) {
for (InterfaceConstruct con : interfaceList) {
}
static public void main(String[] args) {
- String[] dirNames = { Environment.REGISTER, Environment.MS_QUEUE, Environment.LINUXRWLOCKS, Environment.MCS_LOCK, Environment.DEQUE };
+ String[] dirNames = { Environment.REGISTER, Environment.MS_QUEUE,
+ Environment.LINUXRWLOCKS, Environment.MCS_LOCK,
+ Environment.DEQUE };
for (int i = 0; i < dirNames.length; i++) {
String dirName = dirNames[i];