MCPcopy Create free account
hub / github.com/antchfx/xpath / parseMethod

Method parseMethod

parse.go:546–564  ·  view source on GitHub ↗

FunctionCall ::= FunctionName '(' ( Argument ( ',' Argument )* )? ')'

(n node)

Source from the content-addressed store, hash-verified

544
545// FunctionCall ::= FunctionName '(' ( Argument ( ',' Argument )* )? ')'
546func (p *parser) parseMethod(n node) node {
547 var args []node
548 name := p.r.name
549 prefix := p.r.prefix
550
551 p.skipItem(itemName)
552 p.skipItem(itemLParens)
553 if p.r.typ != itemRParens {
554 for {
555 args = append(args, p.parseExpression(n))
556 if p.r.typ == itemRParens {
557 break
558 }
559 p.skipItem(itemComma)
560 }
561 }
562 p.skipItem(itemRParens)
563 return newFunctionNode(name, prefix, args)
564}
565
566// Parse parsing the XPath express string expr and returns a tree node.
567func parse(expr string, namespaces map[string]string) node {

Callers 1

parsePrimaryExprMethod · 0.95

Calls 3

skipItemMethod · 0.95
parseExpressionMethod · 0.95
newFunctionNodeFunction · 0.85

Tested by

no test coverage detected