Skip to content

Commit cef80b9

Browse files
authored
parser: add raw to integers (#890)
1 parent 4040373 commit cef80b9

File tree

2 files changed

+12
-6
lines changed

2 files changed

+12
-6
lines changed

unstable/parser.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1013,6 +1013,7 @@ func (p *Parser) parseIntOrFloatOrDateTime(b []byte) (reference, []byte, error)
10131013
return p.builder.Push(Node{
10141014
Kind: Float,
10151015
Data: b[:3],
1016+
Raw: p.Range(b[:3]),
10161017
}), b[3:], nil
10171018
case 'n':
10181019
if !scanFollowsNan(b) {
@@ -1022,6 +1023,7 @@ func (p *Parser) parseIntOrFloatOrDateTime(b []byte) (reference, []byte, error)
10221023
return p.builder.Push(Node{
10231024
Kind: Float,
10241025
Data: b[:3],
1026+
Raw: p.Range(b[:3]),
10251027
}), b[3:], nil
10261028
case '+', '-':
10271029
return p.scanIntOrFloat(b)
@@ -1146,6 +1148,7 @@ func (p *Parser) scanIntOrFloat(b []byte) (reference, []byte, error) {
11461148
return p.builder.Push(Node{
11471149
Kind: Integer,
11481150
Data: b[:i],
1151+
Raw: p.Range(b[:i]),
11491152
}), b[i:], nil
11501153
}
11511154

@@ -1169,6 +1172,7 @@ func (p *Parser) scanIntOrFloat(b []byte) (reference, []byte, error) {
11691172
return p.builder.Push(Node{
11701173
Kind: Float,
11711174
Data: b[:i+3],
1175+
Raw: p.Range(b[:i+3]),
11721176
}), b[i+3:], nil
11731177
}
11741178

@@ -1180,6 +1184,7 @@ func (p *Parser) scanIntOrFloat(b []byte) (reference, []byte, error) {
11801184
return p.builder.Push(Node{
11811185
Kind: Float,
11821186
Data: b[:i+3],
1187+
Raw: p.Range(b[:i+3]),
11831188
}), b[i+3:], nil
11841189
}
11851190

@@ -1202,6 +1207,7 @@ func (p *Parser) scanIntOrFloat(b []byte) (reference, []byte, error) {
12021207
return p.builder.Push(Node{
12031208
Kind: kind,
12041209
Data: b[:i],
1210+
Raw: p.Range(b[:i]),
12051211
}), b[i:], nil
12061212
}
12071213

unstable/parser_test.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -569,9 +569,9 @@ key5 = [ # Next to start of inline array.
569569
// ---
570570
// 1:1->1:1 (0->0) | KeyValue []
571571
// 1:1->1:1 (0->0) | Array []
572-
// 1:1->1:1 (0->0) | Integer [1]
573-
// 1:1->1:1 (0->0) | Integer [2]
574-
// 1:1->1:1 (0->0) | Integer [3]
572+
// 19:11->19:12 (396->397) | Integer [1]
573+
// 19:14->19:15 (399->400) | Integer [2]
574+
// 19:17->19:18 (402->403) | Integer [3]
575575
// 19:1->19:6 (386->391) | Key [array]
576576
// 19:21->19:46 (406->431) | Comment [# Next to one-line array.]
577577
// ---
@@ -583,12 +583,12 @@ key5 = [ # Next to start of inline array.
583583
// 1:1->1:1 (0->0) | Array []
584584
// 23:10->23:42 (483->515) | Comment [# Next to start of inline array.]
585585
// 24:3->24:38 (518->553) | Comment [# Second line before array content.]
586-
// 1:1->1:1 (0->0) | Integer [1]
586+
// 25:3->25:4 (556->557) | Integer [1]
587587
// 25:6->25:30 (559->583) | Comment [# Next to first element.]
588588
// 26:3->26:25 (586->608) | Comment [# After first element.]
589589
// 27:3->27:27 (611->635) | Comment [# Before second element.]
590-
// 1:1->1:1 (0->0) | Integer [2]
591-
// 1:1->1:1 (0->0) | Integer [3]
590+
// 28:3->28:4 (638->639) | Integer [2]
591+
// 29:3->29:4 (643->644) | Integer [3]
592592
// 29:6->29:28 (646->668) | Comment [# Next to last element]
593593
// 30:3->30:24 (671->692) | Comment [# After last element.]
594594
// 23:1->23:5 (474->478) | Key [key5]

0 commit comments

Comments
 (0)