more
[cdsspec-compiler.git] / src / edu / uci / eecs / specCompiler / specExtraction / SequentialDefineSubConstruct.java
1 package edu.uci.eecs.specCompiler.specExtraction;
2
3 import java.util.ArrayList;
4
5 public class SequentialDefineSubConstruct {
6         public final ArrayList<String> initVar;
7         public final ArrayList<ArrayList<String>> defineFuncs;
8         public final ArrayList<VariableDeclaration> declareVar;
9         public final ArrayList<ArrayList<String>> declareStructs;
10
11         public SequentialDefineSubConstruct(
12                         ArrayList<ArrayList<String>> declareStruct,
13                         ArrayList<VariableDeclaration> declareVar,
14                         ArrayList<String> initVar, ArrayList<ArrayList<String>> defineFuncs) {
15                 this.declareStructs = declareStruct;
16                 this.declareVar = declareVar;
17                 this.initVar = initVar;
18                 this.defineFuncs = defineFuncs;
19         }
20
21         public String toString() {
22                 StringBuffer res = new StringBuffer();
23                 res.append("@Sequential_define:\n");
24                 res.append("@DeclareStruct:\n");
25                 for (int i = 0; i < defineFuncs.size(); i++) {
26                         res.append(ParserUtils.array2Str(declareStructs.get(i)) + "\n");
27                 }
28                 res.append("@DeclareVar:\n");
29                 res.append(ParserUtils.array2Str(declareVar));
30                 res.append("@InitVar:\n");
31                 res.append(ParserUtils.array2Str(initVar));
32                 res.append("@DefineFunc:\n");
33                 for (int i = 0; i < defineFuncs.size(); i++) {
34                         res.append(ParserUtils.array2Str(defineFuncs.get(i)) + "\n");
35                 }
36                 return res.toString();
37         }
38 }