@Override protected List<Java.SwitchStatement.SwitchBlockStatementGroup> generateIndexedGetterImpl(Class type) throws CompileException { List<Java.SwitchStatement.SwitchBlockStatementGroup> list = Lists.newArrayList(); for (int i=0; i<fieldTypes.length; i++) { if (!type.equals(fieldTypes[i])) { continue; } list.add( new Java.SwitchStatement.SwitchBlockStatementGroup( loc, Lists.<Java.Rvalue>newArrayList(new Java.IntegerLiteral(loc, String.valueOf(i+1))), false, Lists.<Java.BlockStatement>newArrayList(new Java.ReturnStatement(loc, generateGetInvocation(fieldTypes[i], i))) ) ); } list.add(generateDefaultCase()); return list; }
@Override protected List<Java.SwitchStatement.SwitchBlockStatementGroup> generateIndexedGetterImpl(Class type) throws CompileException { List<Java.SwitchStatement.SwitchBlockStatementGroup> list = Lists.newArrayList(); for (int n=0; n < fieldNames.length; n++) { if (!type.equals(fieldTypes[n])) { continue; } list.add(new Java.SwitchStatement.SwitchBlockStatementGroup(loc, Lists.<Java.Rvalue>newArrayList(new Java.IntegerLiteral(loc, String.valueOf(n+1))), false, Lists.<Java.BlockStatement>newArrayList( new Java.ReturnStatement(loc, generateGetInvocation(type, n)) ) )); } list.add(generateDefaultCase()); return list; }
@Override protected List<Java.SwitchStatement.SwitchBlockStatementGroup> generateIndexedGetterImpl() throws CompileException { List<Java.SwitchStatement.SwitchBlockStatementGroup> list = Lists.newArrayList(); for (int i=0; i<fieldTypes.length; i++) { list.add( new Java.SwitchStatement.SwitchBlockStatementGroup( loc, Lists.<Java.Rvalue>newArrayList(new Java.IntegerLiteral(loc, String.valueOf(i+1))), false, Lists.<Java.BlockStatement>newArrayList(new Java.ReturnStatement(loc, generateGetInvocation(fieldTypes[i], i))) ) ); } list.add(generateDefaultCase()); return list; }
@Override protected List<Java.SwitchStatement.SwitchBlockStatementGroup> generateIndexedSetterImpl(String value, Class type) throws CompileException { List<Java.SwitchStatement.SwitchBlockStatementGroup> list = Lists.newArrayList(); for (int i=0; i<fieldTypes.length; i++) { if (!type.equals(fieldTypes[i])) { continue; } list.add( new Java.SwitchStatement.SwitchBlockStatementGroup( loc, Lists.<Java.Rvalue>newArrayList(new Java.IntegerLiteral(loc, String.valueOf(i+1))), false, Lists.<Java.BlockStatement>newArrayList( new Java.ExpressionStatement(generateSetInvocation(fieldTypes[i], i, value)), new Java.BreakStatement(loc, null) ) ) ); } list.add(generateDefaultCase()); return list; }
@Override protected List<Java.SwitchStatement.SwitchBlockStatementGroup> generateIndexedSetterImpl(String value) throws CompileException { List<Java.SwitchStatement.SwitchBlockStatementGroup> list = Lists.newArrayList(); for (int i=0; i < fieldNames.length; i++) { list.add( new Java.SwitchStatement.SwitchBlockStatementGroup(loc, Lists.<Java.Rvalue>newArrayList(new Java.IntegerLiteral(loc, Integer.toString(i+1))), false, Lists.<Java.BlockStatement>newArrayList( new Java.ExpressionStatement(generateSetInvocation(fieldTypes[i], i, value)), new Java.BreakStatement(loc, null) ) ) ); } list.add(generateDefaultCase()); return list; }
@Override protected List<Java.SwitchStatement.SwitchBlockStatementGroup> generateIndexedSetterImpl(String value, Class type) throws CompileException { List<Java.SwitchStatement.SwitchBlockStatementGroup> list = Lists.newArrayList(); for (int n=0; n < fieldNames.length; n++) { if (!type.equals(fieldTypes[n])) { continue; } list.add(new Java.SwitchStatement.SwitchBlockStatementGroup(loc, Lists.<Java.Rvalue>newArrayList(new Java.IntegerLiteral(loc, String.valueOf(n+1))), false, Lists.<Java.BlockStatement>newArrayList( new Java.ExpressionStatement(generateSetInvocation(type, n, value)), new Java.BreakStatement(loc, null) ) )); } list.add(generateDefaultCase()); return list; }
@Override protected List<Java.SwitchStatement.SwitchBlockStatementGroup> generateIndexedSetterImpl(String value) throws CompileException { List<Java.SwitchStatement.SwitchBlockStatementGroup> list = Lists.newArrayList(); for (int i=0; i<fieldTypes.length; i++) { list.add( new Java.SwitchStatement.SwitchBlockStatementGroup( loc, Lists.<Java.Rvalue>newArrayList(new Java.IntegerLiteral(loc, String.valueOf(i+1))), false, Lists.<Java.BlockStatement>newArrayList( new Java.ExpressionStatement(generateSetInvocation(fieldTypes[i], i, value)), new Java.BreakStatement(loc, null) ) ) ); } list.add(generateDefaultCase()); return list; }
@Override protected List<Java.SwitchStatement.SwitchBlockStatementGroup> generateIndexedGetterImpl() throws CompileException { List<Java.SwitchStatement.SwitchBlockStatementGroup> list = Lists.newArrayList(); for (int i=0; i < fieldNames.length; i++) { list.add( new Java.SwitchStatement.SwitchBlockStatementGroup(loc, Lists.<Java.Rvalue>newArrayList(new Java.IntegerLiteral(loc, Integer.toString(i+1))), false, Lists.<Java.BlockStatement>newArrayList(new Java.ReturnStatement(loc, generateGetInvocation(fieldTypes[i], i))) ) ); } list.add(generateDefaultCase()); return list; }
protected Java.SwitchStatement.SwitchBlockStatementGroup generateDefaultCase() { return new Java.SwitchStatement.SwitchBlockStatementGroup( loc, Lists.<Java.Rvalue>newArrayList(), true, Lists.<Java.BlockStatement>newArrayList( new Java.ThrowStatement( loc, new Java.NewClassInstance( loc, null, new Java.ReferenceType(loc, new String[] {"IllegalArgumentException"}, null), new Java.Rvalue[0])) )); }