code: function parseFilter() {
          var identifier, args;
  
          identifier = lex();
  
          if (identifier.type !== Token.Identifier) {
              throwUnexpected(identifier);
          }
  
          args = match('(') ? parseArguments() : [];
  
          return delegate.createFilter(identifier.value, args);
      }
docs: Filter :: Identifier Identifier "(" ")" Identifier "(" FilterArguments ")"