def _TwoArgs(w_parser):
    'Returns an expression tree to be evaluated.'
    w0 = w_parser.Read()
    w1 = w_parser.Read()
    s0 = w0.s
    if (s0 == '!'):
        return bool_expr.LogicalNot(bool_expr.WordTest(w1))
    unary_id = Id.Undefined_Tok
    if w0.s.startswith('--'):
        if (s0 == '--dir'):
            unary_id = Id.BoolUnary_d
        elif (s0 == '--exists'):
            unary_id = Id.BoolUnary_e
        elif (s0 == '--file'):
            unary_id = Id.BoolUnary_f
        elif (s0 == '--symlink'):
            unary_id = Id.BoolUnary_L
    if (unary_id == Id.Undefined_Tok):
        unary_id = match.BracketUnary(w0.s)
    if (unary_id == Id.Undefined_Tok):
        p_die('Expected unary operator, got %r (2 args)', w0.s, word=w0)
    return bool_expr.Unary(unary_id, w1)
Returns an expression tree to be evaluated.
def _TwoArgs(w_parser):
    
    w0 = w_parser.Read()
    w1 = w_parser.Read()
    s0 = w0.s
    if (s0 == '!'):
        return bool_expr.LogicalNot(bool_expr.WordTest(w1))
    unary_id = Id.Undefined_Tok
    if w0.s.startswith('--'):
        if (s0 == '--dir'):
            unary_id = Id.BoolUnary_d
        elif (s0 == '--exists'):
            unary_id = Id.BoolUnary_e
        elif (s0 == '--file'):
            unary_id = Id.BoolUnary_f
        elif (s0 == '--symlink'):
            unary_id = Id.BoolUnary_L
    if (unary_id == Id.Undefined_Tok):
        unary_id = match.BracketUnary(w0.s)
    if (unary_id == Id.Undefined_Tok):
        p_die('Expected unary operator, got %r (2 args)', w0.s, word=w0)
    return bool_expr.Unary(unary_id, w1)