if (finegrained) { ASSERT(function instanceof Pair); Pair pair = (Pair)function; ASSERT(pair.getFirst() instanceof Operator); Operator sORj = (Operator)pair.getFirst(); int funcNum = ((Integer)pair.getSecond()).intValue();
ASSERT(function instanceof Pair); Pair pair = (Pair)function; ASSERT(pair.getFirst() instanceof Operator); Operator sORj = (Operator)pair.getFirst(); int funcNum = ((Integer)pair.getSecond()).intValue();
    void runSchedule(Object schedule, Object function)    {        if (schedule instanceof Operator)        {            numExecutions++;            if (numExecutions == 10000)            {                if (marksteady)                    System.out.print(".");                numExecutions = 0;            }            Operator oper = (Operator)schedule;            int filterPop, filterPush;            if (oper instanceof Filter)            {                Filter f = (Filter)oper;                f.executeNextPhase((String)function);            }            else if (oper instanceof SplitJoin)            {                if (finegrained)                {                    ASSERT(function instanceof Pair);                    Pair pair = (Pair)function;                    ASSERT(pair.getFirst() instanceof Operator);                    Operator sORj = (Operator)pair.getFirst();                    int funcNum = ((Integer)pair.getSecond()).intValue();                    sORj.work();                }                else                {                    ASSERT(function instanceof Operator);                    ((Operator)function).work();                }            }            else if (oper instanceof FeedbackLoop)            {                ASSERT(function instanceof Operator);                ((Operator)function).work();            }            else                ASSERT(false);        }    }