void classMemberValue(int pos, int index) throws Exception { currentMember = new ClassMemberValue(index, pool); super.classMemberValue(pos, index); }
/** * Obtains the string representation of this object. */ public String toString() { return getValue().replace('$', '.') + ".class"; }
/** * Constructs a class value. * * @param className the initial value. */ public ClassMemberValue(String className, ConstPool cp) { super('c', cp); setValue(className); }
Object getValue(ClassLoader cl, ClassPool cp, Method m) throws ClassNotFoundException { final String classname = getValue(); if (classname.equals("void")) return void.class; else if (classname.equals("int")) return int.class; else if (classname.equals("byte")) return byte.class; else if (classname.equals("long")) return long.class; else if (classname.equals("double")) return double.class; else if (classname.equals("float")) return float.class; else if (classname.equals("char")) return char.class; else if (classname.equals("short")) return short.class; else if (classname.equals("boolean")) return boolean.class; else return loadClass(cl, classname); }
@Override public void visitClassMemberValue(ClassMemberValue node) { array[index] = new ClassMemberValue(node.getValue(), constPool); }
namedQuery.addMemberValue("query", queryString); ClassMemberValue resultClass = new ClassMemberValue(constantPool); resultClass.setValue(query.resultClass().getName()); namedQuery.addMemberValue("resultClass", resultClass);
Class getType(ClassLoader cl) throws ClassNotFoundException { return loadClass(cl, "java.lang.Class"); }
@Override Object getValue(ClassLoader cl, ClassPool cp, Method m) throws ClassNotFoundException { final String classname = getValue(); if (classname.equals("void")) return void.class; else if (classname.equals("int")) return int.class; else if (classname.equals("byte")) return byte.class; else if (classname.equals("long")) return long.class; else if (classname.equals("double")) return double.class; else if (classname.equals("float")) return float.class; else if (classname.equals("char")) return char.class; else if (classname.equals("short")) return short.class; else if (classname.equals("boolean")) return boolean.class; else return loadClass(cl, classname); }
@Override public void visitClassMemberValue(ClassMemberValue node) { array[index] = new ClassMemberValue(node.getValue(), constPool); }
@Override Class<?> getType(ClassLoader cl) throws ClassNotFoundException { return loadClass(cl, "java.lang.Class"); }
@Override void classMemberValue(int pos, int index) throws Exception { currentMember = new ClassMemberValue(index, pool); super.classMemberValue(pos, index); }
/** * Obtains the string representation of this object. */ @Override public String toString() { return getValue().replace('$', '.') + ".class"; }
/** * Constructs a class value. * The initial value is java.lang.Class. */ public ClassMemberValue(ConstPool cp) { super('c', cp); setValue("java.lang.Class"); }
Object getValue(ClassLoader cl, ClassPool cp, Method m) throws ClassNotFoundException { final String classname = getValue(); if (classname.equals("void")) return void.class; else if (classname.equals("int")) return int.class; else if (classname.equals("byte")) return byte.class; else if (classname.equals("long")) return long.class; else if (classname.equals("double")) return double.class; else if (classname.equals("float")) return float.class; else if (classname.equals("char")) return char.class; else if (classname.equals("short")) return short.class; else if (classname.equals("boolean")) return boolean.class; else return loadClass(cl, classname); }
Class getType(ClassLoader cl) throws ClassNotFoundException { return loadClass(cl, "java.lang.Class"); }
@SuppressWarnings("all") public static MemberValue createMemberValue(Object value, ConstPool constPool) { MemberValue memberValue = null; if (value instanceof Integer) { memberValue = new IntegerMemberValue(constPool, ((Integer) value)); } else if (value instanceof Boolean) { memberValue = new BooleanMemberValue((Boolean) value, constPool); } else if (value instanceof Long) { memberValue = new LongMemberValue((Long) value, constPool); } else if (value instanceof String) { memberValue = new StringMemberValue((String) value, constPool); } else if (value instanceof Class) { memberValue = new ClassMemberValue(((Class) value).getName(), constPool); } else if (value instanceof Object[]) { Object[] arr = ((Object[]) value); ArrayMemberValue arrayMemberValue = new ArrayMemberValue(new ClassMemberValue(arr[0].getClass().getName(), constPool), constPool); arrayMemberValue.setValue(Arrays.stream(arr) .map(o -> createMemberValue(o, constPool)) .toArray(MemberValue[]::new)); memberValue = arrayMemberValue; } return memberValue; }
@Override public void visitClassMemberValue(ClassMemberValue node) { values.add(node.getValue()); }
/** * Constructs a class value. * * @param className the initial value. */ public ClassMemberValue(String className, ConstPool cp) { super('c', cp); setValue(className); }
Object getValue(ClassLoader cl, ClassPool cp, Method m) throws ClassNotFoundException { final String classname = getValue(); if (classname.equals("void")) return void.class; else if (classname.equals("int")) return int.class; else if (classname.equals("byte")) return byte.class; else if (classname.equals("long")) return long.class; else if (classname.equals("double")) return double.class; else if (classname.equals("float")) return float.class; else if (classname.equals("char")) return char.class; else if (classname.equals("short")) return short.class; else if (classname.equals("boolean")) return boolean.class; else return loadClass(cl, classname); }
Class getType(ClassLoader cl) throws ClassNotFoundException { return loadClass(cl, "java.lang.Class"); }