private void _buildInBinding(
                    final InBinding binding,
                    final StringBuilder stmt,
                    final List<Object> params
                    )
    {
        // It's OK if null is contained.
//        if (n_values == 0) {
//            throw new SearchException( "invalid InBinding: empty value list" );
//        }


        // T.p
        _buildProperty( binding.getProperty(), stmt );
        //throws SearchException

        // T.p IN LIST(
        stmt.append( _IN_LIST_ ).append( "(" );

        // T.p IN LIST(v_1, v_2, ..., v_n
        boolean  containsNull = false;
        int  n_valuesAdded = 0;

        for (Object  value : binding.getValues()) {
            if (value == null) {
                containsNull = true;
            } else {
                if (n_valuesAdded > 0) {
                    stmt.append( "," );
                }
                _buildParameter( value, stmt, params );
                n_valuesAdded++;
            }
        }

        if (binding.isNullContained()  ||  containsNull) {
            if (n_valuesAdded > 0) {
                stmt.append( "," );
            }
            // T.p IN LIST(v_1, v_2, ..., v_n, nil
            stmt.append( _NIL_ );
        }

        // T.p IN LIST(v_1, v_2, ..., v_n)
        stmt.append( ")" );
    }
private void _buildInBinding ( final InBinding binding , final StringBuilder stmt , final List < Object > params ) { _buildProperty ( binding . getProperty ( ) , stmt ) ; stmt . append ( _IN_LIST_ ) . append ( "(" ) ; boolean containsNull = false ; int n_valuesAdded = 0 ; for ( Object value : binding . getValues ( ) ) { if ( value == null ) { containsNull = true ; } else { if ( n_valuesAdded > 0 ) { stmt . append ( "," ) ; } _buildParameter ( value , stmt , params ) ; n_valuesAdded ++ ; } } if ( binding . isNullContained ( ) || containsNull ) { if ( n_valuesAdded > 0 ) { stmt . append ( "," ) ; } stmt . append ( _NIL_ ) ; } stmt . append ( ")" ) ; }
InBinding
T.p IN LIST(v_1, v_2, ..., v_n)
v_i = "nil", if v_i == null.