private Object executeOverrideTarget(Method o, Object ctx, Object value) { try { return o.invoke(ctx, convert(value, targetType)); } catch (Exception e2) { throw new RuntimeException("unable to invoke method", e2); } } }
public Object setValue(Object ctx, Object elCtx, VariableResolverFactory variableFactory, Object value) { try { return method.invoke(ctx, convert(value, targetType)); } catch (Exception e) { throw new RuntimeException("error binding property", e); } }
private Object executeOverrideTarget(Method o, Object ctx, Object value) { try { return o.invoke(ctx, convert(value, targetType)); } catch (Exception e2) { throw new RuntimeException("unable to invoke method", e2); } } }
public static void setProperty(final Object i, final Field f, final Object v) { try { f.setAccessible(true); f.set(i, DataConversion.convert(v, f.getType())); } catch (Exception e) { throw new RuntimeException("could not set field (inst=" + i + "; field=" + f + "; val=" + v + ")", e); } }
public static void setProperty(final Object i, final Field f, final Object v) { try { f.setAccessible(true); f.set(i, DataConversion.convert(v, f.getType())); } catch (Exception e) { throw new RuntimeException("could not set field (inst=" + i + "; field=" + f + "; val=" + v + ")", e); } }
public Object getValue(Object ctx, Object elCtx, VariableResolverFactory variableFactory) { int[] s = new int[sizes.length]; for (int i = 0; i < s.length; i++) { s[i] = convert(sizes[i].getValue(ctx, elCtx, variableFactory), Integer.class); } return newInstance(arrayType, s); }
/** * Execute a compiled expression and convert the result to a type. * * @param compiledExpression - * @param ctx - * @param toType - * @return - */ public static <T> T executeExpression(final Object compiledExpression, final Object ctx, Class<T> toType) { return convert(executeExpression(compiledExpression, ctx), toType); }
public Object setValue(Object ctx, Object elCtx, VariableResolverFactory variableFactory, Object value) { try { return method.invoke(ctx, convert(value, targetType)); } catch (Exception e) { throw new CompileException("error binding property", e); } }
private Object[] executeAndCoerce(Class[] target, Object elCtx, VariableResolverFactory vars) { Object[] values = new Object[length]; for (int i = 0; i < length; i++) { //noinspection unchecked values[i] = convert(parms[i].getValue(elCtx, vars), target[i]); } return values; }
private Object[] executeAndCoerce(Class[] target, Object elCtx, VariableResolverFactory vars) { Object[] values = new Object[length]; for (int i = 0; i < length; i++) { //noinspection unchecked values[i] = convert(parms[i].getValue(elCtx, vars), target[i]); } return values; }
/** * Execute a compiled expression and convert the result to a type * * @param compiledExpression - * @param vars - * @param toType - * @return - */ @SuppressWarnings({"unchecked"}) public static <T> T executeExpression(final Object compiledExpression, Map vars, Class<T> toType) { return convert(executeExpression(compiledExpression, vars), toType); }
private Object[] executeAndCoerce(Class[] target, Object elCtx, VariableResolverFactory vars) { Object[] values = new Object[length]; for (int i = 0; i < length; i++) { //noinspection unchecked values[i] = convert(parms[i].getValue(elCtx, vars), target[i]); } return values; }
private Object[] executeAndCoerce(Class[] target, Object elCtx, VariableResolverFactory vars) { Object[] values = new Object[length]; for (int i = 0; i < length; i++) { //noinspection unchecked values[i] = convert(parms[i].getValue(elCtx, vars), target[i]); } return values; }
public Object getValue(Object ctx, Object elCtx, VariableResolverFactory variableFactory) { int[] s = new int[sizes.length]; for (int i = 0; i < s.length; i++) { s[i] = convert(sizes[i].getValue(ctx, elCtx, variableFactory), Integer.class); } return newInstance(arrayType, s); }
public Object getValue(Object ctx, Object elCtx, VariableResolverFactory variableFactory) { int[] s = new int[sizes.length]; for (int i = 0; i < s.length; i++) { s[i] = convert(sizes[i].getValue(ctx, elCtx, variableFactory), Integer.class); } return newInstance(arrayType, s); }
private Object[] executeAndCoerce(Class[] target, Object elCtx, VariableResolverFactory vars) { Object[] values = new Object[length]; for (int i = 0; i < length; i++) { //noinspection unchecked values[i] = convert(parms[i].getValue(elCtx, vars), target[i]); } return values; }
/** * Evaluates an expression against a context object and, if necessary, coerces the resultant value to the specified * type. * * @param expression A string containing the expression to be evaluated. * @param ctx The context object to evaluate against. * @param toType The target type that the resultant value will be converted to, if necessary. * @return The resultant value * @see #eval(String, Class) */ public static <T> T eval(String expression, Object ctx, Class<T> toType) { return convert(new MVELInterpretedRuntime(expression, ctx).parse(), toType); }
public Object getReducedValue(Object ctx, Object thisValue, VariableResolverFactory factory) { //noinspection unchecked return widen ? typeCheck(eval(expr, start, offset, ctx, factory), egressType) : convert(eval(expr, start, offset, ctx, factory), egressType); }
public static <T> T eval(char[] expression, Class<T> type) { try { return convert(new MVELInterpretedRuntime(expression).parse(), type); } catch (EndWithValue end) { return (T) end.getValue(); } }