JL5New node = JL5New(pos, null, CanonicalTypeNode(pos, container), args, null, new ArrayList()); return node.constructorInstance(ts.findConstructor(container, argTypes, context.currentClass())).type(container);
JL5Call node = JL5Call(pos, CanonicalTypeNode(pos, container), "valueOf", args, new ArrayList()); node = (JL5Call)node.type(container); return node.methodInstance(ts.findMethod(container, "valueOf", argTypes, context.currentClass()));
    public Expr createBoxed(Position pos, Expr orig, TypeSystem typeSystem, Context context) throws SemanticException {        JL5TypeSystem ts = (JL5TypeSystem)typeSystem;        ClassType container = null;                if (ts.equals(orig.type(), ts.Int())){            container = ts.IntegerWrapper();        }        else if (ts.equals(orig.type(), ts.Short())){            container = ts.ShortWrapper();        }        else if (ts.equals(orig.type(), ts.Byte())){            container = ts.ByteWrapper();        }        else if (ts.equals(orig.type(), ts.Char())){            container = ts.CharacterWrapper();        }        else if (ts.equals(orig.type(), ts.Boolean())){            container = ts.BooleanWrapper();        }        else if (ts.equals(orig.type(), ts.Long())){            container = ts.LongWrapper();        }        else if (ts.equals(orig.type(), ts.Float())){            container = ts.FloatWrapper();        }        else if (ts.equals(orig.type(), ts.Double())){            container = ts.DoubleWrapper();        }        else {            return orig;        }                ArrayList args = new ArrayList();        ArrayList argTypes = new ArrayList();        args.add(orig);        argTypes.add(orig.type());                JL5New node = JL5New(pos, null, CanonicalTypeNode(pos, container), args, null, new ArrayList());        return node.constructorInstance(ts.findConstructor(container, argTypes, context.currentClass())).type(container);    }