Package org.lilystudio.smarty4j.expression.number

Examples of org.lilystudio.smarty4j.expression.number.ConstInteger


   *
   * @param index
   *          索引数值
   */
  public ListExtended(int index) {
    this(new ConstInteger(index));
  }
View Full Code Here


        if (word.equals("null")) {
          expressions[expressionSize] = new NullExpression();
          expressionSize++;
          isFirst = false;
        } else if (word instanceof Integer) {
          expressions[expressionSize] = new ConstInteger((Integer) word);
          expressionSize++;
          isFirst = false;
        } else if (word instanceof IExpression) {
          expressions[expressionSize] = (IExpression) word;
          expressionSize++;
View Full Code Here

                    values.add(new FalseCheck());
                  } else {
                    throw new ParseException("不能识别的保留字");
                  }
                } else if (o instanceof Integer) {
                  values.add(new ConstInteger(((Number) o).intValue()));
                } else if (o instanceof Double) {
                  values.add(new ConstDouble(((Number) o).doubleValue()));
                } else {
                  throw new ParseException("不能识别的参数");
                }
View Full Code Here

            value = (IExpression) word;
          } else if (Operation.C_SUB == word) {
            word = words[index + 3];
            index++;
            if (word instanceof Integer) {
              value = new ConstInteger(-((Integer) word));
            } else if (word instanceof Double) {
              value = new ConstDouble(-((Double) word));
            } else {
              throw new ParseException("不能识别的函数参数值");
            }
          } else if (word instanceof Integer) {
            value = new ConstInteger((Integer) word);
          } else if (word instanceof Double) {
            value = new ConstDouble((Double) word);
          } else if ("true".equals(word) || "yes".equals(word)
              || "on".equals(word)) {
            value = new TrueCheck();
View Full Code Here

      if (exp instanceof ConstInteger) {
        ((ConstInteger) exp).inverse();
      } else if (exp instanceof ConstDouble) {
        ((ConstDouble) exp).inverse();
      } else {
        expressions[index] = mode == INTEGER ? new SubInteger(new ConstInteger(
            0), exp) : new SubDouble(new ConstDouble(0.0), exp);
      }
      break;
    case NOT:
      expressions[index] = new NotCheck(exp);
      break;
    case MUL:
      expressions[index] = mode == INTEGER ? new MulInteger(exp,
          expressions[index + 1]) : new MulDouble(exp, expressions[index + 1]);
      break;
    case DIV:
      expressions[index] = mode == INTEGER ? new DivInteger(exp,
          expressions[index + 1]) : new DivDouble(exp, expressions[index + 1]);
      break;
    case MOD:
      expressions[index] = mode == INTEGER ? new ModInteger(exp,
          expressions[index + 1]) : new ModDouble(exp, expressions[index + 1]);
      break;
    case ADD:
      expressions[index] = mode == INTEGER ? new AddInteger(exp,
          expressions[index + 1]) : new AddDouble(exp, expressions[index + 1]);
      break;
    case SUB:
      expressions[index] = mode == INTEGER ? new SubInteger(exp,
          expressions[index + 1]) : new SubDouble(exp, expressions[index + 1]);
      break;
    case GT:
      expressions[index] = new GTCheck(exp, expressions[index + 1]);
      break;
    case LT:
      expressions[index] = new LTCheck(exp, expressions[index + 1]);
      break;
    case EQ:
      expressions[index] = new EQCheck(exp, expressions[index + 1]);
      break;
    case NEQ:
      expressions[index] = new NECheck(exp, expressions[index + 1]);
      break;
    case AEQ:
      expressions[index] = new AEQCheck(exp, expressions[index + 1]);
      break;
    case ANE:
      expressions[index] = new ANEQCheck(exp, expressions[index + 1]);
      break;
    case GTE:
      expressions[index] = new GECheck(exp, expressions[index + 1]);
      break;
    case LTE:
      expressions[index] = new LECheck(exp, expressions[index + 1]);
      break;
    case AND:
      expressions[index] = mode == OBJECT ? new ObjectAndExpression(exp,
          expressions[index + 1]) : new AndCheck(exp, expressions[index + 1]);
      break;
    case OR:
      expressions[index] = mode == OBJECT ? new ObjectOrExpression(exp,
          expressions[index + 1]) : new OrCheck(exp, expressions[index + 1]);
      break;
    case ISDIVBY:
      expressions[index] = new NotCheck(new ModInteger(exp,
          expressions[index + 1]));
      break;
    case ISEVENBY:
      expressions[index] = new NotCheck(new ModInteger(new DivInteger(exp,
          expressions[index + 1]), new ConstInteger(2)));
      break;
    case ISODDBY:
      expressions[index] = new ModInteger(new DivInteger(exp,
          expressions[index + 1]), new ConstInteger(2));
      break;
    case ISEVEN:
      expressions[index] = new NotCheck(
          new ModInteger(exp, new ConstInteger(2)));
      break;
    case ISODD:
      expressions[index] = new ModInteger(exp, new ConstInteger(2));
      break;
    }
    return param - 1;
  }
View Full Code Here

TOP

Related Classes of org.lilystudio.smarty4j.expression.number.ConstInteger

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.