Package org.pentaho.reporting.libraries.formula.typing

Examples of org.pentaho.reporting.libraries.formula.typing.Sequence


    BigDecimal last = null;
    for (int paramIdx = 0; paramIdx < parameterCount; paramIdx++)
    {
      final Type type = parameters.getType(paramIdx);
      final Object value = parameters.getValue(paramIdx);
      final Sequence sequence = typeRegistry.convertToNumberSequence(type, value, isStrictSequenceNeeded());

      while (sequence.hasNext())
      {
        final LValue rawValue = sequence.nextRawValue();
        if (rawValue == null)
        {
          throw EvaluationException.getInstance(LibFormulaErrorValue.ERROR_INVALID_ARGUMENT_VALUE);
        }
        final TypeValuePair nextValue = rawValue.evaluate();
View Full Code Here


    BigDecimal last = null;
    for (int paramIdx = 0; paramIdx < parameterCount; paramIdx++)
    {
      final Type type = parameters.getType(paramIdx);
      final Object value = parameters.getValue(paramIdx);
      final Sequence sequence = typeRegistry.convertToNumberSequence(type, value, isStrictSequenceNeeded());

      while (sequence.hasNext())
      {
        final LValue rawValue = sequence.nextRawValue();
        if (rawValue == null)
        {
          throw EvaluationException.getInstance(LibFormulaErrorValue.ERROR_INVALID_ARGUMENT_VALUE);
        }
        final TypeValuePair nextValue = rawValue.evaluate();
View Full Code Here

    if (parameterCount == 0 || parameterCount > 2)
    {
      throw EvaluationException.getInstance(LibFormulaErrorValue.ERROR_ARGUMENTS_VALUE);
    }

    final Sequence sequenceRaw =
        context.getTypeRegistry().convertToSequence(parameters.getType(0), parameters.getValue(0));
    if (sequenceRaw == null)
    {
      throw EvaluationException.getInstance(LibFormulaErrorValue.ERROR_NA_VALUE);
    }
View Full Code Here

    for (int paramIdx = 0; paramIdx < parameterCount; paramIdx++)
    {
      try
      {
        final Object value = parameters.getValue(paramIdx);
        final Sequence sequence = new RecursiveSequence(value, context);
        while (sequence.hasNext())
        {
          final Object o = sequence.next();
          count += countElement(o);
        }
      }
      catch (EvaluationException e)
      {
View Full Code Here

        }
      }
    }
    else if (o instanceof Sequence)
    {
      final Sequence s = (Sequence) o;
      while (s.hasNext())
      {
        count += countElement(s.next());
      }
    }
    else if (o != null)
    {
      count++;
View Full Code Here

    if (parameterCount < 1 || parameterCount > 3)
    {
      throw EvaluationException.getInstance(LibFormulaErrorValue.ERROR_ARGUMENTS_VALUE);
    }

    final Sequence sequence =
        context.getTypeRegistry().convertToSequence(parameters.getType(0), parameters.getValue(0));
    if (sequence == null)
    {
      throw EvaluationException.getInstance(LibFormulaErrorValue.ERROR_NA_VALUE);
    }

    String quote = "\"";
    String separator = ",";
    if (parameterCount > 1)
    {
      final Type indexType = parameters.getType(1);
      final Object indexValue = parameters.getValue(1);
      separator = context.getTypeRegistry().convertToText(indexType, indexValue);
    }

    if (parameterCount > 2)
    {
      final Type indexType = parameters.getType(2);
      final Object indexValue = parameters.getValue(2);
      quote = context.getTypeRegistry().convertToText(indexType, indexValue);
    }

    StringBuilder b = new StringBuilder();
    while (sequence.hasNext())
    {
      final Object o = sequence.next();
      if (o != null)
      {
        b.append(quote).append(String.valueOf(o)).append(quote);
      }
      if (sequence.hasNext())
      {
        b.append(separator);
      }
    }
    return new TypeValuePair(TextType.TYPE, b.toString());
View Full Code Here

    {
      try
      {
        final Type type = parameters.getType(paramIdx);
        final Object value = parameters.getValue(paramIdx);
        final Sequence sequence = context.getTypeRegistry().convertToNumberSequence(type, value, false);

        while (sequence.hasNext())
        {
          final Object o = sequence.next();
          if (o != null)
          {
            count++;
          }
        }
View Full Code Here

    BigDecimal last = null;
    for (int paramIdx = 0; paramIdx < parameterCount; paramIdx++)
    {
      final Type type = parameters.getType(paramIdx);
      final Object value = parameters.getValue(paramIdx);
      final Sequence sequence = typeRegistry.convertToNumberSequence(type, value, isStrictSequenceNeeded());

      while (sequence.hasNext())
      {
        final LValue rawValue = sequence.nextRawValue();
        if (rawValue == null)
        {
          throw new EvaluationException(LibFormulaErrorValue.ERROR_INVALID_ARGUMENT_VALUE);
        }
        final TypeValuePair nextValue = rawValue.evaluate();
View Full Code Here

    {
      if (value != null)
      {
        try
        {
          final Sequence sequence = context.getTypeRegistry().convertToSequence(type, value);

          while (sequence.hasNext())
          {
            final Object o = sequence.next();
            if (o == null)
            {
              count++;
            }
          }
View Full Code Here

    BigDecimal last = null;
    for (int paramIdx = 0; paramIdx < parameterCount; paramIdx++)
    {
      final Type type = parameters.getType(paramIdx);
      final Object value = parameters.getValue(paramIdx);
      final Sequence sequence = typeRegistry.convertToNumberSequence(type, value, isStrictSequenceNeeded());

      while (sequence.hasNext())
      {
        final LValue rawValue = sequence.nextRawValue();
        if (rawValue == null)
        {
          throw new EvaluationException(LibFormulaErrorValue.ERROR_INVALID_ARGUMENT_VALUE);
        }
        final TypeValuePair nextValue = rawValue.evaluate();
View Full Code Here

TOP

Related Classes of org.pentaho.reporting.libraries.formula.typing.Sequence

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.