Search in sources :

Example 1 with ArgumentIntKey

use of lucee.runtime.type.scope.ArgumentIntKey in project Lucee by lucee.

the class Every method invoke.

private static boolean invoke(PageContext pc, Iterator it, UDF udf, ExecutorService es, List<Future<Data<Object>>> futures) throws PageException {
    Object v;
    boolean async = es != null;
    Object res;
    int count = 0;
    ArgumentIntKey k;
    while (it.hasNext()) {
        v = it.next();
        k = ArgumentIntKey.init(++count);
        res = _inv(pc, udf, new Object[] { v }, k, v, es, futures);
        if (!async && !Caster.toBooleanValue(res))
            return false;
    }
    return true;
}
Also used : ArgumentIntKey(lucee.runtime.type.scope.ArgumentIntKey)

Example 2 with ArgumentIntKey

use of lucee.runtime.type.scope.ArgumentIntKey in project Lucee by lucee.

the class Every method invoke.

private static boolean invoke(PageContext pc, List list, UDF udf, ExecutorService es, List<Future<Data<Object>>> futures) throws CasterException, PageException {
    ListIterator it = list.listIterator();
    boolean async = es != null;
    Object res, v;
    int index;
    ArgumentIntKey k;
    while (it.hasNext()) {
        index = it.nextIndex();
        k = ArgumentIntKey.init(index);
        v = it.next();
        res = _inv(pc, udf, new Object[] { v, Caster.toDoubleValue(k.getString()), list }, k, v, es, futures);
        if (!async && !Caster.toBooleanValue(res))
            return false;
    }
    return true;
}
Also used : ArgumentIntKey(lucee.runtime.type.scope.ArgumentIntKey) ListIterator(java.util.ListIterator)

Example 3 with ArgumentIntKey

use of lucee.runtime.type.scope.ArgumentIntKey in project Lucee by lucee.

the class Filter method invoke.

private static Array invoke(PageContext pc, Iterator it, UDF udf, ExecutorService es, List<Future<Data<Pair<Object, Object>>>> futures) throws PageException {
    Array rtn = new ArrayImpl();
    Object v;
    boolean async = es != null;
    Object res;
    int count = 0;
    ArgumentIntKey k;
    while (it.hasNext()) {
        v = it.next();
        k = ArgumentIntKey.init(++count);
        res = _inv(pc, udf, new Object[] { v }, k, v, es, futures);
        if (!async && Caster.toBooleanValue(res))
            rtn.append(v);
    }
    return rtn;
}
Also used : Array(lucee.runtime.type.Array) ArrayImpl(lucee.runtime.type.ArrayImpl) ArgumentIntKey(lucee.runtime.type.scope.ArgumentIntKey)

Example 4 with ArgumentIntKey

use of lucee.runtime.type.scope.ArgumentIntKey in project Lucee by lucee.

the class Filter method invoke.

private static Array invoke(PageContext pc, Enumeration e, UDF udf, ExecutorService es, List<Future<Data<Pair<Object, Object>>>> futures) throws PageException {
    Array rtn = new ArrayImpl();
    Object v;
    boolean async = es != null;
    Object res;
    int count = 0;
    ArgumentIntKey k;
    while (e.hasMoreElements()) {
        v = e.nextElement();
        k = ArgumentIntKey.init(++count);
        res = _inv(pc, udf, new Object[] { v }, k, v, es, futures);
        if (!async && Caster.toBooleanValue(res))
            rtn.append(v);
    }
    return rtn;
}
Also used : Array(lucee.runtime.type.Array) ArrayImpl(lucee.runtime.type.ArrayImpl) ArgumentIntKey(lucee.runtime.type.scope.ArgumentIntKey)

Example 5 with ArgumentIntKey

use of lucee.runtime.type.scope.ArgumentIntKey in project Lucee by lucee.

the class Filter method invoke.

private static Collection invoke(PageContext pc, List list, UDF udf, ExecutorService es, List<Future<Data<Pair<Object, Object>>>> futures) throws CasterException, PageException {
    Array rtn = new ArrayImpl();
    ListIterator it = list.listIterator();
    boolean async = es != null;
    Object res, v;
    int index;
    ArgumentIntKey k;
    while (it.hasNext()) {
        index = it.nextIndex();
        k = ArgumentIntKey.init(index);
        v = it.next();
        res = _inv(pc, udf, new Object[] { v, Caster.toDoubleValue(k.getString()), list }, k, v, es, futures);
        if (!async && Caster.toBooleanValue(res))
            rtn.append(v);
    }
    return rtn;
}
Also used : Array(lucee.runtime.type.Array) ArrayImpl(lucee.runtime.type.ArrayImpl) ArgumentIntKey(lucee.runtime.type.scope.ArgumentIntKey) ListIterator(java.util.ListIterator)

Aggregations

ArgumentIntKey (lucee.runtime.type.scope.ArgumentIntKey)16 Array (lucee.runtime.type.Array)6 ArrayImpl (lucee.runtime.type.ArrayImpl)6 ListIterator (java.util.ListIterator)5 ArrayList (java.util.ArrayList)1 Iterator (java.util.Iterator)1 Map (java.util.Map)1 Entry (java.util.Map.Entry)1 Collection (lucee.runtime.type.Collection)1 Key (lucee.runtime.type.Collection.Key)1 FunctionArgument (lucee.runtime.type.FunctionArgument)1 Argument (lucee.runtime.type.scope.Argument)1