MCPcopy Create free account
hub / github.com/jmespath/go-jmespath / parseExpression

Method parseExpression

parser.go:145–163  ·  view source on GitHub ↗
(bindingPower int)

Source from the content-addressed store, hash-verified

143}
144
145func (p *Parser) parseExpression(bindingPower int) (ASTNode, error) {
146 var err error
147 leftToken := p.lookaheadToken(0)
148 p.advance()
149 leftNode, err := p.nud(leftToken)
150 if err != nil {
151 return ASTNode{}, err
152 }
153 currentToken := p.current()
154 for bindingPower < bindingPowers[currentToken] {
155 p.advance()
156 leftNode, err = p.led(currentToken, leftNode)
157 if err != nil {
158 return ASTNode{}, err
159 }
160 currentToken = p.current()
161 }
162 return leftNode, nil
163}
164
165func (p *Parser) parseIndexExpression() (ASTNode, error) {
166 if p.lookahead(0) == tColon || p.lookahead(1) == tColon {

Callers 8

ParseMethod · 0.95
ledMethod · 0.95
nudMethod · 0.95
parseMultiSelectListMethod · 0.95
parseMultiSelectHashMethod · 0.95
parseFilterMethod · 0.95
parseDotRHSMethod · 0.95
parseProjectionRHSMethod · 0.95

Calls 5

lookaheadTokenMethod · 0.95
advanceMethod · 0.95
nudMethod · 0.95
currentMethod · 0.95
ledMethod · 0.95

Tested by

no test coverage detected