/** {@inheritDoc} */ public Object createModelObject(ParserContext context) { java.util.List<Parameter> ret = new java.util.ArrayList<Parameter>(); boolean f_iterate = false; do { f_iterate = false; Parameter p = new Parameter(); setEndProperties(p, context.pop()); p.setName(((CommonToken) context.pop()).getText()); setStartProperties(p, context.pop()); // sig ret.add(0, p); if (context.peek() instanceof CommonToken && ((CommonToken) context.peek()).getText().equals(",")) { context.pop(); // , f_iterate = true; } } while (f_iterate); context.push(ret); return ret; }
/** {@inheritDoc} */ public Object createModelObject(ParserContext context) { java.util.List<RoleDecl> ret = new java.util.ArrayList<RoleDecl>(); boolean f_iterate = false; // consume ')' context.pop(); do { f_iterate = false; RoleDecl rd = new RoleDecl(); setEndProperties(rd, context.peek()); rd.setName(((CommonToken) context.pop()).getText()); if (context.peek() instanceof CommonToken && ((CommonToken) context.peek()).getText().equals("as")) { context.pop(); // 'as' rd.setAlias(rd.getName()); rd.setName(((CommonToken) context.pop()).getText()); } setStartProperties(rd, context.pop()); // role ret.add(0, rd); if (context.peek() instanceof CommonToken && ((CommonToken) context.peek()).getText().equals(",")) { context.pop(); // , f_iterate = true; } } while (f_iterate); // consume '(' context.pop(); context.push(ret); return ret; }