Package org.mvel2.integration

Examples of org.mvel2.integration.VariableResolver


      variableResolvers = new SimpleIndexHashMapWrapper<String, VariableResolver>(variables, true);
    }

    @Override
    public VariableResolver createVariable(String name, Object value) {
      VariableResolver vr;

      try {
        (vr = getVariableResolver(name)).setValue(value);
        return vr;
      }
View Full Code Here


      }
    }

    @Override
    public VariableResolver createVariable(String name, Object value, Class<?> type) {
      VariableResolver vr;
      try {
        vr = getVariableResolver(name);
      }
      catch (UnresolveablePropertyException e) {
        vr = null;
      }

      if (vr != null && vr.getType() != null) {
        throw new CompileException("variable already defined within scope: " + vr.getType() + " " + name, expr, start);
      }
      else {
        addResolver(name, vr = new ProtoResolver(variables, name, type)).setValue(value);
        return vr;
      }
View Full Code Here

      return null;
    }

    @Override
    public VariableResolver createIndexedVariable(int index, String name, Object value, Class<?> type) {
      VariableResolver vr = this.variableResolvers != null ? this.variableResolvers.getByIndex(index) : null;
      if (vr != null && vr.getType() != null) {
        throw new CompileException("variable already defined within scope: " + vr.getType() + " " + name, expr, start);
      }
      else {
        return createIndexedVariable(variableIndexOf(name), name, value);
      }
    }
View Full Code Here

      }
    }

    @Override
    public VariableResolver createIndexedVariable(int index, String name, Object value) {
      VariableResolver vr = variableResolvers.getByIndex(index);

      if (vr == null) {
        vr = new SimpleValueResolver(value);
        variableResolvers.putAtIndex(index, vr);
      }
      else {
        vr.setValue(value);
      }


      return indexedVariableResolvers[index];
    }
View Full Code Here

    public int variableIndexOf(String name) {
      return variableResolvers.indexOf(name);
    }

    public VariableResolver getVariableResolver(String name) {
      VariableResolver vr = variableResolvers.get(name);
      if (vr != null) {
        return vr;
      }
      else if (variables.containsKey(name)) {
        variableResolvers.put(name, vr = new ProtoResolver(variables, name));
View Full Code Here

        if (variableFactory.isIndexedFactory() && variableFactory.isTarget(property)) {
          int idx;
          addAccessorNode(new IndexedVariableAccessor(idx = variableFactory.variableIndexOf(property)));

          VariableResolver vr = variableFactory.getIndexedVariableResolver(idx);
          if (vr == null) {
            variableFactory.setIndexedVariableResolver(idx, variableFactory.getVariableResolver(property));
          }

          return variableFactory.getIndexedVariableResolver(idx).getValue();
View Full Code Here

      this.egressType = pCtx.getVarOrInputType(name);
    }
  }

  public Object getReducedValueAccelerated(Object ctx, Object thisValue, VariableResolverFactory factory) {
    VariableResolver vResolver = factory.getVariableResolver(name);
    vResolver.setValue(MathProcessor.doOperations(ctx = vResolver.getValue(), Operator.SUB, DataTypes.INTEGER, 1));
    return ctx;
  }
View Full Code Here

      this.egressType = pCtx.getVarOrInputType(name);
    }
  }

  public Object getReducedValueAccelerated(Object ctx, Object thisValue, VariableResolverFactory factory) {
    VariableResolver vResolver = factory.getVariableResolver(name);
    vResolver.setValue(ctx = MathProcessor.doOperations(vResolver.getValue(), Operator.SUB, DataTypes.INTEGER, 1));
    return ctx;
  }
View Full Code Here

      egressType = statement.getKnownEgressType();
    }
  }

  public Object getReducedValueAccelerated(Object ctx, Object thisValue, VariableResolverFactory factory) {
    VariableResolver resolver = factory.getIndexedVariableResolver(register);
    resolver.setValue(ctx = MathProcessor.doOperations(resolver.getValue(), operation, statement.getValue(ctx, thisValue, factory)));
    return ctx;
  }
View Full Code Here

    resolver.setValue(ctx = MathProcessor.doOperations(resolver.getValue(), operation, statement.getValue(ctx, thisValue, factory)));
    return ctx;
  }

  public Object getReducedValue(Object ctx, Object thisValue, VariableResolverFactory factory) {
    VariableResolver resolver = factory.getIndexedVariableResolver(register);
    resolver.setValue(ctx = MathProcessor.doOperations(resolver.getValue(), operation, eval(expr, start, offset, ctx, factory)));
    return ctx;
  }
View Full Code Here

TOP

Related Classes of org.mvel2.integration.VariableResolver

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.