code: function(){
      var feature = this.supportsFeature()
        , op
        , expr;
      if (feature) {
        expr = new nodes.Expression;
        expr.push(feature);
        while (op = this.accept('&&') || this.accept('||')) {
          expr.push(new nodes.Literal('&&' == op.val ? 'and' : 'or'));
          expr.push(this.supportsFeature());
        }
        return expr;
      }
    }
docs: supports feature (('and' | 'or') supports feature)+