We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
If json is Unmarshaled using json.Number format like:
my_map := make(map[string]interface{}) d := json.NewDecoder(strings.NewReader(json_raw)) d.UseNumber() d.Decode(&my_map)
And then used to search:
var expr1 = jmespath.MustCompile("people[?age > `20`].[name, age]") result, err := expr1.Search(my_map)
err is nil but the result is [] even though some objects must be returned. Removing the d.UseNumber() makes the Search work properly.
[]
d.UseNumber()
This is probably because this type assertion fails to recognize the value in the map as a Number (float): https://github.com/jmespath/go-jmespath/blob/master/interpreter.go#L48
json.Number is essentially a string. So either reflect/conversion library can be used here or type assertion should handle json.Number.
The text was updated successfully, but these errors were encountered:
Looks to me a reasonable request.
Sorry, something went wrong.
same as above
Successfully merging a pull request may close this issue.
If json is Unmarshaled using json.Number format like:
And then used to search:
err is nil but the result is
[]
even though some objects must be returned. Removing thed.UseNumber()
makes the Search work properly.This is probably because this type assertion fails to recognize the value in the map as a Number (float): https://github.com/jmespath/go-jmespath/blob/master/interpreter.go#L48
json.Number is essentially a string. So either reflect/conversion library can be used here or type assertion should handle json.Number.
The text was updated successfully, but these errors were encountered: