for (int i = 0; i < methParams.size(); i++) {
String paramType = methPrmTypes.get(i);
String param = methParams.get(i);
- String simpleType = getSimpleType(paramType);
+ String simpleType = getGenericType(paramType);
if (isStructClass(simpleType)) {
// Check if this is enum type
int methodNumId = intDecl.getMethodNumId(method);
for (int i = 0; i < methParams.size(); i++) {
String paramType = methPrmTypes.get(i);
String param = methParams.get(i);
- String simpleType = getSimpleType(paramType);
+ String simpleType = getGenericType(paramType);
if (isStructClass(simpleType))
return true;
}
if (isStructClass(simpleType)) {
int members = getNumOfMembers(simpleType);
if (isArray(param)) { // An array
- String structLen = param + ".length";
+ String structLen = getSimpleArrayType(param) + ".length";
print(members + "*" + structLen);
} else if (isList(paramType)) { // A list
- String structLen = param + ".size()";
+ String structLen = getSimpleArrayType(param) + ".size()";
print(members + "*" + structLen);
} else
print(Integer.toString(members));
List<String> memTypes = structDecl.getMemberTypes(simpleType);
List<String> members = structDecl.getMembers(simpleType);
if (isArray(param)) { // An array
- println("for(int i = 0; i < " + param + ".length; i++) {");
+ println("for(int i = 0; i < " + getSimpleIdentifier(param) + ".length; i++) {");
+ for (int i = 0; i < members.size(); i++) {
+ String prmType = checkAndGetArray(memTypes.get(i), members.get(i));
+ println("paramCls[pos] = " + getSimpleType(getEnumType(prmType)) + ".class;");
+ print("paramObj[pos++] = " + getSimpleIdentifier(param) + "[i].");
+ print(getSimpleIdentifier(members.get(i)));
+ println(";");
+ }
+ println("}");
} else if (isList(paramType)) { // A list
- println("for(int i = 0; i < " + param + ".size(); i++) {");
- }
- if (isArrayOrList(param, paramType)) { // An array or list
+ println("for(int i = 0; i < " + getSimpleIdentifier(param) + ".size(); i++) {");
for (int i = 0; i < members.size(); i++) {
String prmType = checkAndGetArray(memTypes.get(i), members.get(i));
println("paramCls[pos] = " + getSimpleType(getEnumType(prmType)) + ".class;");
- print("paramObj[pos++] = " + param + "[i].");
+ print("paramObj[pos++] = " + getSimpleIdentifier(param) + ".get(i).");
print(getSimpleIdentifier(members.get(i)));
println(";");
}
for (int i = 0; i < members.size(); i++) {
String prmType = checkAndGetArray(memTypes.get(i), members.get(i));
println("paramCls[pos] = " + getSimpleType(getEnumType(prmType)) + ".class;");
- print("paramObj[pos++] = " + param + ".");
+ print("paramObj[pos++] = " + getSimpleIdentifier(param) + ".");
print(getSimpleIdentifier(members.get(i)));
println(";");
}
for (int i = 0; i < methParams.size(); i++) {
String paramType = methPrmTypes.get(i);
String param = methParams.get(i);
- String simpleType = getSimpleType(paramType);
+ String simpleType = getGenericType(paramType);
if (isStructClass(simpleType)) {
int methodNumId = intDecl.getMethodNumId(method);
String helperMethod = methodNumId + "struct" + i;
StructDecl structDecl = getStructDecl(simpleType);
List<String> memTypes = structDecl.getMemberTypes(simpleType);
List<String> members = structDecl.getMembers(simpleType);
- if (isArrayOrList(param, paramType)) { // An array or list
+ println("int pos = 0;");
+ if (isArrayOrList(paramType, param)) { // An array or list
int methodNumId = intDecl.getMethodNumId(method);
String counter = "struct" + methodNumId + "Size" + iVar;
println("for(int i = 0; i < " + counter + "; i++) {");
}
- println("int pos = 0;");
- if (isArrayOrList(param, paramType)) { // An array or list
- println("for(int i = 0; i < retLen; i++) {");
+ if (isArrayOrList(paramType, param)) { // An array or list
for (int i = 0; i < members.size(); i++) {
String prmType = checkAndGetArray(memTypes.get(i), members.get(i));
println("paramCls[pos] = " + getSimpleType(getEnumType(prmType)) + ".class;");
StructDecl structDecl = getStructDecl(simpleType);
List<String> members = structDecl.getMembers(simpleType);
List<String> memTypes = structDecl.getMemberTypes(simpleType);
- if (isArrayOrList(param, paramType)) { // An array or list
+ if (isArrayOrList(paramType, param)) { // An array or list
println("for(int i = 0; i < " + counter + "; i++) {");
}
if (isArray(param)) { // An array
StructDecl structDecl = getStructDecl(simpleType);
List<String> memTypes = structDecl.getMemberTypes(simpleType);
List<String> members = structDecl.getMembers(simpleType);
- if (isArrayOrList(retType, retType)) { // An array or list
+ if (isArray(retType)) { // An array or list
println("for(int i = 0; i < retLen; i++) {");
for (int i = 0; i < members.size(); i++) {
String prmType = checkAndGetArray(memTypes.get(i), members.get(i));
println(";");
}
println("}");
+ } else if (isList(retType)) { // An array or list
+ println("for(int i = 0; i < retLen; i++) {");
+ for (int i = 0; i < members.size(); i++) {
+ String prmType = checkAndGetArray(memTypes.get(i), members.get(i));
+ println("retCls[retPos] = " + getSimpleType(getEnumType(prmType)) + ".class;");
+ print("retObj[retPos++] = retStruct.get(i).");
+ print(getEnumParam(memTypes.get(i), getSimpleIdentifier(members.get(i)), i));
+ println(";");
+ }
+ println("}");
} else { // Just one struct element
for (int i = 0; i < members.size(); i++) {
String prmType = checkAndGetArray(memTypes.get(i), members.get(i));
for (int i = 0; i < methParams.size(); i++) { // Print size variables
String paramType = methPrmTypes.get(i);
String param = methParams.get(i);
- String simpleType = getSimpleType(paramType);
+ String simpleType = getGenericType(paramType);
if (isStructClass(simpleType)) {
if (!begin) { // Generate comma for not the beginning variable
print(", "); begin = false;
for (int i = 0; i < methParams.size(); i++) {
String paramType = methPrmTypes.get(i);
String param = methParams.get(i);
- String simpleType = getSimpleType(paramType);
+ String simpleType = getGenericType(paramType);
if (isStructClass(simpleType)) {
int methodNumId = intDecl.getMethodNumId(method);
print("public int ___");
for (int i = 0; i < methParams.size(); i++) {
String paramType = methPrmTypes.get(i);
String param = methParams.get(i);
- String simpleType = getSimpleType(paramType);
+ String simpleType = getGenericType(paramType);
if (isStructClass(simpleType)) {
int methodNumId = intDecl.getMethodNumId(method);
print("public int ___");
for (int i = 0; i < methParams.size(); i++) {
String paramType = methPrmTypes.get(i);
String param = methParams.get(i);
- String simpleType = getSimpleType(paramType);
+ String simpleType = getGenericType(paramType);
if (isStructClass(simpleType)) {
int methodNumId = intDecl.getMethodNumId(method);
println("int struct" + methodNumId + "Size" + i + " = 0;");
for (int i = 0; i < methParams.size(); i++) {
String paramType = methPrmTypes.get(i);
String param = methParams.get(i);
- String simpleType = getSimpleType(paramType);
+ String simpleType = getGenericType(paramType);
boolean begin = true;
if (isStructClass(simpleType)) {
structExist = true;
for (int i = 0; i < methParams.size(); i++) {
String paramType = methPrmTypes.get(i);
String param = methParams.get(i);
- String simpleType = getSimpleType(paramType);
+ String simpleType = getGenericType(paramType);
if (isStructClass(simpleType)) {
int methodNumId = intDecl.getMethodNumId(method);
print("case ");
for (int i = 0; i < methParams.size(); i++) {
String paramType = methPrmTypes.get(i);
String param = methParams.get(i);
- String simpleType = getSimpleType(paramType);
+ String simpleType = getGenericType(paramType);
if (isStructClass(simpleType)) {
int methodNumId = intDecl.getMethodNumId(method);
print("case ");
for (int i = 0; i < methParams.size(); i++) { // Print size variables
String paramType = methPrmTypes.get(i);
String param = methParams.get(i);
- String simpleType = getSimpleType(paramType);
+ String simpleType = getGenericType(paramType);
if (isStructClass(simpleType)) {
if (!begin) { // Generate comma for not the beginning variable
print(", "); begin = false;
for (int i = 0; i < methParams.size(); i++) {
String paramType = methPrmTypes.get(i);
String param = methParams.get(i);
- String simpleType = getSimpleType(paramType);
+ String simpleType = getGenericType(paramType);
if (isStructClass(simpleType)) {
// Check if this is enum type
println("int numParam" + i + " = 1;");
println("string retTypeStruct" + i + " = \"void\";");
println("string paramClsStruct" + i + "[] = { \"int\" };");
print("int structLen" + i + " = ");
- if (isArrayOrList(param, paramType)) { // An array
+ if (isArrayOrList(paramType, param)) { // An array
println(getSimpleArrayType(param) + ".size();");
} else { // Just one element
println("1;");
String simpleType = getGenericType(paramType);
if (isStructClass(simpleType)) {
int members = getNumOfMembers(simpleType);
- if (isArrayOrList(param, paramType)) { // An array
- String structLen = param + ".size()";
+ if (isArrayOrList(paramType, param)) { // An array or list
+ String structLen = getSimpleIdentifier(param) + ".size()";
print(members + "*" + structLen);
} else
print(Integer.toString(members));
StructDecl structDecl = getStructDecl(simpleType);
List<String> memTypes = structDecl.getMemberTypes(simpleType);
List<String> members = structDecl.getMembers(simpleType);
- if (isArrayOrList(param, paramType)) { // An array or list
- println("for(int i = 0; i < " + param + ".size(); i++) {");
+ if (isArrayOrList(paramType, param)) { // An array or list
+ println("for(int i = 0; i < " + getSimpleIdentifier(param) + ".size(); i++) {");
}
- if (isArrayOrList(param, paramType)) { // An array or list
+ if (isArrayOrList(paramType, param)) { // An array or list
for (int i = 0; i < members.size(); i++) {
String prmTypeC = checkAndGetCplusArgClsType(memTypes.get(i), members.get(i));
println("paramCls[pos] = \"" + prmTypeC + "\";");
- print("paramObj[pos++] = &" + param + "[i].");
+ print("paramObj[pos++] = &" + getSimpleIdentifier(param) + "[i].");
print(getSimpleIdentifier(members.get(i)));
println(";");
}
for (int i = 0; i < methParams.size(); i++) {
String paramType = methPrmTypes.get(i);
String param = methParams.get(i);
- String simpleType = getSimpleType(paramType);
+ String simpleType = getGenericType(paramType);
if (isStructClass(simpleType)) {
int methodNumId = intDecl.getMethodNumId(method);
String helperMethod = methodNumId + "struct" + i;
List<String> members = structDecl.getMembers(simpleType);
int methodNumId = intDecl.getMethodNumId(method);
String counter = "struct" + methodNumId + "Size" + iVar;
- if (isArrayOrList(param, paramType)) { // An array or list
- println("for(int i = 0; i < " + counter + "; i++) {");
- }
+ println("int pos = 0;");
// Set up variables
- if (isArrayOrList(param, paramType)) { // An array or list
+ if (isArrayOrList(paramType, param)) { // An array or list
for (int i = 0; i < members.size(); i++) {
String prmTypeC = checkAndGetCplusType(memTypes.get(i));
String prmType = checkAndGetCplusArrayType(prmTypeC, members.get(i));
println(getSimpleType(getEnumType(prmType)) + " param" + i + ";");
}
}
- println("int pos = 0;");
- if (isArrayOrList(param, paramType)) { // An array or list
- println("for(int i = 0; i < retLen; i++) {");
+ if (isArrayOrList(paramType, param)) { // An array or list
+ println("for(int i = 0; i < " + counter + "; i++) {");
+ }
+ if (isArrayOrList(paramType, param)) { // An array or list
for (int i = 0; i < members.size(); i++) {
String prmTypeC = checkAndGetCplusArgClsType(memTypes.get(i), members.get(i));
println("paramCls[pos] = \"" + prmTypeC + "\";");
int methodNumId = intDecl.getMethodNumId(method);
String counter = "struct" + methodNumId + "Size" + i;
// Declaration
- if (isArrayOrList(param, paramType)) { // An array or list
- println("vector<" + simpleType + "> paramStruct" + i + ";");
+ if (isArrayOrList(paramType, param)) { // An array or list
+ println("vector<" + simpleType + "> paramStruct" + i + "(" + counter + ");");
} else
println(simpleType + " paramStruct" + i + ";");
// Initialize members
StructDecl structDecl = getStructDecl(simpleType);
List<String> members = structDecl.getMembers(simpleType);
List<String> memTypes = structDecl.getMemberTypes(simpleType);
- if (isArrayOrList(param, paramType)) { // An array or list
+ if (isArrayOrList(paramType, param)) { // An array or list
println("for(int i = 0; i < " + counter + "; i++) {");
for (int j = 0; j < members.size(); j++) {
print("paramStruct" + i + "[i]." + getSimpleIdentifier(members.get(j)));
for (int i = 0; i < methParams.size(); i++) { // Print size variables
String paramType = methPrmTypes.get(i);
String param = methParams.get(i);
- String simpleType = getSimpleType(paramType);
+ String simpleType = getGenericType(paramType);
if (isStructClass(simpleType)) {
if (!begin) { // Generate comma for not the beginning variable
print(", "); begin = false;
for (int i = 0; i < methParams.size(); i++) {
String paramType = methPrmTypes.get(i);
String param = methParams.get(i);
- String simpleType = getSimpleType(paramType);
+ String simpleType = getGenericType(paramType);
if (isStructClass(simpleType)) {
int methodNumId = intDecl.getMethodNumId(method);
print("int ___");
for (int i = 0; i < methParams.size(); i++) {
String paramType = methPrmTypes.get(i);
String param = methParams.get(i);
- String simpleType = getSimpleType(paramType);
+ String simpleType = getGenericType(paramType);
if (isStructClass(simpleType)) {
int methodNumId = intDecl.getMethodNumId(method);
print("int ___");
for (int i = 0; i < methParams.size(); i++) { // Print size variables
String paramType = methPrmTypes.get(i);
String param = methParams.get(i);
- String simpleType = getSimpleType(paramType);
+ String simpleType = getGenericType(paramType);
if (isStructClass(simpleType)) {
if (!begin) { // Generate comma for not the beginning variable
print(", "); begin = false;