Skip to content

Commit c0900c4

Browse files
authored
Added colon support
1 parent 46faf33 commit c0900c4

1 file changed

Lines changed: 12 additions & 0 deletions

File tree

jsonpath.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -244,9 +244,15 @@ func parse_token(token string) (op string, key string, args interface{}, err err
244244
var frm interface{}
245245
var to interface{}
246246
if frm, err = strconv.Atoi(strings.Trim(tails[0], " ")); err != nil {
247+
if strings.Trim(tails[0], " ") == "" {
248+
err = nil
249+
}
247250
frm = nil
248251
}
249252
if to, err = strconv.Atoi(strings.Trim(tails[1], " ")); err != nil {
253+
if strings.Trim(tails[1], " ") == "" {
254+
err = nil
255+
}
250256
to = nil
251257
}
252258
args = [2]interface{}{frm, to}
@@ -379,6 +385,12 @@ func get_range(obj, frm, to interface{}) (interface{}, error) {
379385
length := reflect.ValueOf(obj).Len()
380386
_frm := 0
381387
_to := length
388+
if frm == nil {
389+
frm = 0
390+
}
391+
if to == nil {
392+
to = length - 1
393+
}
382394
if fv, ok := frm.(int); ok == true {
383395
if fv < 0 {
384396
_frm = length + fv

0 commit comments

Comments
 (0)