public BeanPropertyAccessor<B> run() { Class clazz = generateClassFile(beanType, set).defineClass(); try { return (BeanPropertyAccessor<B>) clazz.newInstance(); } catch (InstantiationException e) { throw new InternalError(e.toString()); } catch (IllegalAccessException e) { throw new InternalError(e.toString()); } } });
public PatternMatcher<V> run() { Class clz = clazz; if (clz == null) { clz = maker.createClassFile().defineClass(); cPatternMatcherClasses.put(maker.getKey(), clz); } try { Constructor ctor = clz.getConstructor(new Class[]{Object[].class}); return (PatternMatcher)ctor.newInstance(new Object[]{maker.getMappedValues()}); } catch (NoSuchMethodException e) { throw new InternalError(e.toString()); } catch (InstantiationException e) { throw new InternalError(e.toString()); } catch (IllegalAccessException e) { throw new InternalError(e.toString()); } catch (InvocationTargetException e) { throw new InternalError(e.toString()); } } });
private static ThrowUnchecked generateImpl() { RuntimeClassFile cf = new RuntimeClassFile(null, ThrowUnchecked.class.getName()); cf.addDefaultConstructor(); CodeBuilder b = new CodeBuilder (cf.addMethod(Modifiers.PROTECTED, "doFire", null, new TypeDesc[] {TypeDesc.forClass(Throwable.class)})); b.loadLocal(b.getParameter(0)); b.throwObject(); try { return (ThrowUnchecked) cf.defineClass().newInstance(); } catch (Exception e) { throw new Error(e); } }
instance = (F) cf.defineClass().newInstance(); } catch (IllegalAccessException e) { throw new UndeclaredThrowableException(e);
Class<T> clazz = cf.defineClass(); return clazz;
private Class<?> generateClass(ScoreFormulaLexer lexer, int funcNum) throws Exception { // initialize the code generator RuntimeClassFile cf = new RuntimeClassFile("UserDefinedFunction_"+funcNum); cf.addInterface("com.flaptor.indextank.index.scorer.ScoreFunction"); cf.addDefaultConstructor(); docVarType = TypeDesc.forClass("com.flaptor.indextank.index.scorer.Boosts"); // DocVariables queryVarType = TypeDesc.forClass("com.flaptor.indextank.query.QueryVariables"); // Variables params = new TypeDesc[] {TypeDesc.DOUBLE, TypeDesc.INT, docVarType, queryVarType}; MethodInfo mi = cf.addMethod(Modifiers.PUBLIC, "score", TypeDesc.DOUBLE, params); b = new CodeBuilder(mi); scoreParam = b.getParameter(0); ageParam = b.getParameter(1); docVarParam = b.getParameter(2); queryVarParam = b.getParameter(3); // parse and generate code start(); error = error == null ? lexer.getError() : error; if (null != error) { throw error; } // return the generated class Class<?> clazz = cf.defineClass(); return clazz; }
public BeanPropertyAccessor<B> run() { Class clazz = generateClassFile(beanType, set).defineClass(); try { return (BeanPropertyAccessor<B>) clazz.newInstance(); } catch (InstantiationException e) { throw new InternalError(e.toString()); } catch (IllegalAccessException e) { throw new InternalError(e.toString()); } } });
public PatternMatcher<V> run() { Class clz = clazz; if (clz == null) { clz = maker.createClassFile().defineClass(); cPatternMatcherClasses.put(maker.getKey(), clz); } try { Constructor ctor = clz.getConstructor(new Class[]{Object[].class}); return (PatternMatcher)ctor.newInstance(new Object[]{maker.getMappedValues()}); } catch (NoSuchMethodException e) { throw new InternalError(e.toString()); } catch (InstantiationException e) { throw new InternalError(e.toString()); } catch (IllegalAccessException e) { throw new InternalError(e.toString()); } catch (InvocationTargetException e) { throw new InternalError(e.toString()); } } });
builder.returnValue(TypeDesc.INT); return cf.defineClass();
private static ThrowUnchecked generateImpl() { RuntimeClassFile cf = new RuntimeClassFile(null, ThrowUnchecked.class.getName()); cf.addDefaultConstructor(); CodeBuilder b = new CodeBuilder (cf.addMethod(Modifiers.PROTECTED, "doFire", null, new TypeDesc[] {TypeDesc.forClass(Throwable.class)})); b.loadLocal(b.getParameter(0)); b.throwObject(); try { return (ThrowUnchecked) cf.defineClass().newInstance(); } catch (Exception e) { throw new Error(e); } }
instance = (F) cf.defineClass().newInstance(); } catch (IllegalAccessException e) { throw new UndeclaredThrowableException(e);
return cf.defineClass();
Class<T> clazz = cf.defineClass(); return clazz;
Class clazz = cf.defineClass(); mSyntheticSerializableTypes.put(key, clazz); return clazz;
Class type = cf.defineClass(); mSyntheticRemoteTypes.put(key, type); return type;
builder.returnValue(TypeDesc.INT); return cf.defineClass();
return cf.defineClass();
return cf.defineClass();