import java.util.ArrayList;
import edu.uci.eecs.specCompiler.codeGenerator.Environment;
-import edu.uci.eecs.specCompiler.codeGenerator.SemanticsChecker;
-import edu.uci.eecs.specCompiler.grammerParser.ParseException;
-import edu.uci.eecs.specCompiler.grammerParser.SpecParser;
+import edu.uci.eecs.specCompiler.grammerParser.utilParser.ParseException;
+import edu.uci.eecs.specCompiler.grammerParser.utilParser.UtilParser;
public class ParserUtils {
public static String trimSpace(String line) {
public static String getTemplateStr(String templateLine) {
String templateStr = null;
+ ArrayList<VariableDeclaration> templateArgs;
try {
- ArrayList<String> args = SpecParser.getTemplateArg(templateLine);
- templateStr = "<" + args.get(1);
- for (int i = 1; i < args.size() / 2; i++) {
- templateStr = templateStr + ", " + args.get(i * 2 + 1);
+ templateArgs = UtilParser.getTemplateArg(templateLine);
+ templateStr = "<" + templateArgs.get(0).name;
+ for (int i = 1; i < templateArgs.size(); i++) {
+ templateStr = templateStr + ", " + templateArgs.get(i).name;
}
templateStr = templateStr + ">";
} catch (ParseException e) {
e.printStackTrace();
}
+
return templateStr;
}
-
+
public static void write2File(File file, ArrayList<String> content) {
- String newFileName = Environment.GENERATED_FILE_DIR + "/" + file.getName();
+ String newFileName = Environment.GENERATED_FILE_DIR + "/"
+ + file.getParentFile().getName() + "/" + file.getName();
+
File newFile = new File(newFileName);
newFile.getParentFile().mkdirs();
if (!newFile.exists()) {