private static Selector processAND ( Selector sel0 , Selector sel1 ) { sel0 = DNF0 ( sel0 ) ; sel1 = DNF0 ( sel1 ) ; if ( sel0 instanceof Operator ) { Operator oper = ( Operator ) sel0 ; if ( oper . getOp ( ) == Selector . OR ) return makeOR ( processAND ( oper . getOperands ( ) [ 0 ] , sel1 ) , processAND ( oper . getOperands ( ) [ 1 ] , sel1 ) ) ; } // Left operand is not OR, so treat it as an atom while exploring the right operand return processANDRight ( sel0 , sel1 ) ; }
Subroutine of DNF0 to process AND nodes