rookout 0.1.10 → 0.1.11
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/rookout/augs/aug_factory.rb +3 -3
- data/lib/rookout/augs/aug_rate_limiter.rb +3 -3
- data/lib/rookout/augs/locations/location.rb +3 -3
- data/lib/rookout/commit.rb +1 -1
- data/lib/rookout/exceptions.rb +3 -2
- data/lib/rookout/processor/paths/canopy/maps.rb +286 -286
- data/lib/rookout/processor/paths/canopy/markers.rb +18 -0
- data/lib/rookout/processor/rook_error.rb +5 -2
- data/lib/rookout/services/position.rb +27 -17
- data/lib/rookout/version.rb +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 60302a56b6a812ebcbffa6f737d09c489451469d81faf3dc7dd40c2e8d00d47f
|
4
|
+
data.tar.gz: ffc57878db1619dacd3b3e9d742f319aa9ddd95644b0aae70cd7dd9d554b12c8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 72955273e9f425aa5f21ed5bb6325e5806550b466eea822383d81df7adf3374f8c436036be04aed4bddb117465fd577c9ecf5f0c7f7a35449d11c6d5916d601f
|
7
|
+
data.tar.gz: 2ab2e8e7478a46bd06b42b9e346afa30bb9f4a405caa6342d4fd0bbe95dc601d37e0af5e3c9f8d58fca08125cc1e78cc12a5166c7f9da52c5c6697ef0765d7d4
|
@@ -61,12 +61,12 @@ module Rookout
|
|
61
61
|
window_quota = 200
|
62
62
|
window_size = 5000
|
63
63
|
|
64
|
-
rate_limit = configuration["
|
64
|
+
rate_limit = configuration["rateLimit"]
|
65
65
|
if rate_limit
|
66
66
|
rate_limit_splitted = rate_limit.split "/"
|
67
67
|
if rate_limit_splitted.length == 2
|
68
|
-
window_quota = rate_limit_splitted[0]
|
69
|
-
window_size = rate_limit_splitted[1]
|
68
|
+
window_quota = rate_limit_splitted[0].to_i
|
69
|
+
window_size = rate_limit_splitted[1].to_i
|
70
70
|
end
|
71
71
|
end
|
72
72
|
|
@@ -18,7 +18,7 @@ module Rookout
|
|
18
18
|
start_time ||= Time.now
|
19
19
|
|
20
20
|
# If quota, verify it
|
21
|
-
if @quota
|
21
|
+
if @quota && @quota > 0
|
22
22
|
# Get current time
|
23
23
|
now_ms = (start_time.to_f * 1000).to_i
|
24
24
|
|
@@ -36,7 +36,7 @@ module Rookout
|
|
36
36
|
|
37
37
|
# If exceeding quota
|
38
38
|
if current_usage(now_ms, current_window_key, prev_window_key) > @quota
|
39
|
-
warning = RookError.new Exceptions::RookRuleRateLimited.new
|
39
|
+
warning = Processor::RookError.new Exceptions::RookRuleRateLimited.new
|
40
40
|
UserWarnings.notify_warning warning
|
41
41
|
return
|
42
42
|
end
|
@@ -46,7 +46,7 @@ module Rookout
|
|
46
46
|
begin
|
47
47
|
yield
|
48
48
|
ensure
|
49
|
-
@mutex.synchronize { record_usage current_window_key, (Time.now - start_time) * 1000 } if @quota
|
49
|
+
@mutex.synchronize { record_usage current_window_key, (Time.now - start_time) * 1000 } if @quota && @quota > 0
|
50
50
|
end
|
51
51
|
ensure
|
52
52
|
# Reduce active count
|
@@ -28,7 +28,6 @@ module Rookout
|
|
28
28
|
raise
|
29
29
|
rescue Exception => e
|
30
30
|
message = "Exception while processing Aug"
|
31
|
-
puts e.message + "\n" + e.backtrace.join("\n\t")
|
32
31
|
error = Processor::RookError.new e, message
|
33
32
|
notify_warning error
|
34
33
|
end
|
@@ -56,7 +55,9 @@ module Rookout
|
|
56
55
|
|
57
56
|
Logger.instance.warning error.message
|
58
57
|
|
59
|
-
|
58
|
+
# For easier testing
|
59
|
+
return if @output.nil?
|
60
|
+
@output.send_rule_status id, :Warning, error
|
60
61
|
end
|
61
62
|
|
62
63
|
private
|
@@ -76,7 +77,6 @@ module Rookout
|
|
76
77
|
|
77
78
|
# For easier testing
|
78
79
|
return if @output.nil?
|
79
|
-
|
80
80
|
@output.send_rule_status id, status, error
|
81
81
|
end
|
82
82
|
end
|
data/lib/rookout/commit.rb
CHANGED
data/lib/rookout/exceptions.rb
CHANGED
@@ -31,7 +31,7 @@ module Rookout
|
|
31
31
|
|
32
32
|
class RookAttributeNotFound < ToolException
|
33
33
|
def initialize attribute
|
34
|
-
super "Failed to get attribute #{attribute}", { attribute
|
34
|
+
super "Failed to get attribute #{attribute}", { "attribute" => attribute }
|
35
35
|
end
|
36
36
|
end
|
37
37
|
|
@@ -84,7 +84,8 @@ module Rookout
|
|
84
84
|
|
85
85
|
class RookNonPrimitiveObjectType < ToolException
|
86
86
|
def initialize path
|
87
|
-
super "Object
|
87
|
+
super "Object #{path} must be of primitive type, such as: string, int, long etc",
|
88
|
+
{ "path" => path }
|
88
89
|
end
|
89
90
|
end
|
90
91
|
|
@@ -6,7 +6,7 @@ module Maps
|
|
6
6
|
include Enumerable
|
7
7
|
attr_reader :text, :offset, :elements
|
8
8
|
|
9
|
-
def initialize(text, offset, elements)
|
9
|
+
def initialize(text, offset, elements = [])
|
10
10
|
@text = text
|
11
11
|
@offset = offset
|
12
12
|
@elements = elements
|
@@ -342,12 +342,12 @@ module Maps
|
|
342
342
|
@offset = cached[1]
|
343
343
|
return cached[0]
|
344
344
|
end
|
345
|
-
chunk0
|
346
|
-
if
|
347
|
-
chunk0 = @input[@offset
|
345
|
+
chunk0 = nil
|
346
|
+
if @offset < @input_size
|
347
|
+
chunk0 = @input[@offset...@offset + 1]
|
348
348
|
end
|
349
349
|
if chunk0 =~ /\A[a-zA-Z_$@]/
|
350
|
-
address0 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
350
|
+
address0 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
351
351
|
@offset = @offset + 1
|
352
352
|
else
|
353
353
|
address0 = FAILURE
|
@@ -370,12 +370,12 @@ module Maps
|
|
370
370
|
@offset = cached[1]
|
371
371
|
return cached[0]
|
372
372
|
end
|
373
|
-
chunk0
|
374
|
-
if
|
375
|
-
chunk0 = @input[@offset
|
373
|
+
chunk0 = nil
|
374
|
+
if @offset < @input_size
|
375
|
+
chunk0 = @input[@offset...@offset + 1]
|
376
376
|
end
|
377
377
|
if chunk0 =~ /\A[a-zA-Z0-9_$@]/
|
378
|
-
address0 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
378
|
+
address0 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
379
379
|
@offset = @offset + 1
|
380
380
|
else
|
381
381
|
address0 = FAILURE
|
@@ -447,12 +447,12 @@ module Maps
|
|
447
447
|
end
|
448
448
|
index1, elements0 = @offset, []
|
449
449
|
address1 = FAILURE
|
450
|
-
chunk0
|
451
|
-
if
|
452
|
-
chunk0 = @input[@offset
|
450
|
+
chunk0 = nil
|
451
|
+
if @offset < @input_size
|
452
|
+
chunk0 = @input[@offset...@offset + 1]
|
453
453
|
end
|
454
454
|
if chunk0 == "."
|
455
|
-
address1 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
455
|
+
address1 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
456
456
|
@offset = @offset + 1
|
457
457
|
else
|
458
458
|
address1 = FAILURE
|
@@ -497,12 +497,12 @@ module Maps
|
|
497
497
|
end
|
498
498
|
index1, elements0 = @offset, []
|
499
499
|
address1 = FAILURE
|
500
|
-
chunk0
|
501
|
-
if
|
502
|
-
chunk0 = @input[@offset
|
500
|
+
chunk0 = nil
|
501
|
+
if @offset < @input_size
|
502
|
+
chunk0 = @input[@offset...@offset + 1]
|
503
503
|
end
|
504
504
|
if chunk0 == "["
|
505
|
-
address1 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
505
|
+
address1 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
506
506
|
@offset = @offset + 1
|
507
507
|
else
|
508
508
|
address1 = FAILURE
|
@@ -537,12 +537,12 @@ module Maps
|
|
537
537
|
unless address2 == FAILURE
|
538
538
|
elements0 << address2
|
539
539
|
address3 = FAILURE
|
540
|
-
chunk1
|
541
|
-
if
|
542
|
-
chunk1 = @input[@offset
|
540
|
+
chunk1 = nil
|
541
|
+
if @offset < @input_size
|
542
|
+
chunk1 = @input[@offset...@offset + 1]
|
543
543
|
end
|
544
544
|
if chunk1 == "]"
|
545
|
-
address3 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
545
|
+
address3 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
546
546
|
@offset = @offset + 1
|
547
547
|
else
|
548
548
|
address3 = FAILURE
|
@@ -608,12 +608,12 @@ module Maps
|
|
608
608
|
unless address2 == FAILURE
|
609
609
|
elements0 << address2
|
610
610
|
address4 = FAILURE
|
611
|
-
chunk0
|
612
|
-
if
|
613
|
-
chunk0 = @input[@offset
|
611
|
+
chunk0 = nil
|
612
|
+
if @offset < @input_size
|
613
|
+
chunk0 = @input[@offset...@offset + 1]
|
614
614
|
end
|
615
615
|
if chunk0 == "("
|
616
|
-
address4 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
616
|
+
address4 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
617
617
|
@offset = @offset + 1
|
618
618
|
else
|
619
619
|
address4 = FAILURE
|
@@ -631,18 +631,18 @@ module Maps
|
|
631
631
|
index3 = @offset
|
632
632
|
address5 = _read_atom
|
633
633
|
if address5 == FAILURE
|
634
|
-
address5 = TreeNode.new(@input[index3...index3], index3
|
634
|
+
address5 = TreeNode.new(@input[index3...index3], index3)
|
635
635
|
@offset = index3
|
636
636
|
end
|
637
637
|
unless address5 == FAILURE
|
638
638
|
elements0 << address5
|
639
639
|
address6 = FAILURE
|
640
|
-
chunk1
|
641
|
-
if
|
642
|
-
chunk1 = @input[@offset
|
640
|
+
chunk1 = nil
|
641
|
+
if @offset < @input_size
|
642
|
+
chunk1 = @input[@offset...@offset + 1]
|
643
643
|
end
|
644
644
|
if chunk1 == ")"
|
645
|
-
address6 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
645
|
+
address6 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
646
646
|
@offset = @offset + 1
|
647
647
|
else
|
648
648
|
address6 = FAILURE
|
@@ -695,12 +695,12 @@ module Maps
|
|
695
695
|
end
|
696
696
|
index1, elements0 = @offset, []
|
697
697
|
address1 = FAILURE
|
698
|
-
chunk0
|
699
|
-
if
|
700
|
-
chunk0 = @input[@offset
|
698
|
+
chunk0 = nil
|
699
|
+
if @offset < @input_size
|
700
|
+
chunk0 = @input[@offset...@offset + 1]
|
701
701
|
end
|
702
702
|
if chunk0 == "."
|
703
|
-
address1 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
703
|
+
address1 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
704
704
|
@offset = @offset + 1
|
705
705
|
else
|
706
706
|
address1 = FAILURE
|
@@ -736,12 +736,12 @@ module Maps
|
|
736
736
|
unless address3 == FAILURE
|
737
737
|
elements0 << address3
|
738
738
|
address5 = FAILURE
|
739
|
-
chunk1
|
740
|
-
if
|
741
|
-
chunk1 = @input[@offset
|
739
|
+
chunk1 = nil
|
740
|
+
if @offset < @input_size
|
741
|
+
chunk1 = @input[@offset...@offset + 1]
|
742
742
|
end
|
743
743
|
if chunk1 == "("
|
744
|
-
address5 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
744
|
+
address5 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
745
745
|
@offset = @offset + 1
|
746
746
|
else
|
747
747
|
address5 = FAILURE
|
@@ -759,18 +759,18 @@ module Maps
|
|
759
759
|
index3 = @offset
|
760
760
|
address6 = _read_atom
|
761
761
|
if address6 == FAILURE
|
762
|
-
address6 = TreeNode.new(@input[index3...index3], index3
|
762
|
+
address6 = TreeNode.new(@input[index3...index3], index3)
|
763
763
|
@offset = index3
|
764
764
|
end
|
765
765
|
unless address6 == FAILURE
|
766
766
|
elements0 << address6
|
767
767
|
address7 = FAILURE
|
768
|
-
chunk2
|
769
|
-
if
|
770
|
-
chunk2 = @input[@offset
|
768
|
+
chunk2 = nil
|
769
|
+
if @offset < @input_size
|
770
|
+
chunk2 = @input[@offset...@offset + 1]
|
771
771
|
end
|
772
772
|
if chunk2 == ")"
|
773
|
-
address7 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
773
|
+
address7 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
774
774
|
@offset = @offset + 1
|
775
775
|
else
|
776
776
|
address7 = FAILURE
|
@@ -914,12 +914,12 @@ module Maps
|
|
914
914
|
unless address1 == FAILURE
|
915
915
|
elements0 << address1
|
916
916
|
address2 = FAILURE
|
917
|
-
chunk0
|
918
|
-
if
|
919
|
-
chunk0 = @input[@offset
|
917
|
+
chunk0 = nil
|
918
|
+
if @offset < @input_size
|
919
|
+
chunk0 = @input[@offset...@offset + 1]
|
920
920
|
end
|
921
921
|
if chunk0 == "("
|
922
|
-
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
922
|
+
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
923
923
|
@offset = @offset + 1
|
924
924
|
else
|
925
925
|
address2 = FAILURE
|
@@ -938,12 +938,12 @@ module Maps
|
|
938
938
|
unless address3 == FAILURE
|
939
939
|
elements0 << address3
|
940
940
|
address4 = FAILURE
|
941
|
-
chunk1
|
942
|
-
if
|
943
|
-
chunk1 = @input[@offset
|
941
|
+
chunk1 = nil
|
942
|
+
if @offset < @input_size
|
943
|
+
chunk1 = @input[@offset...@offset + 1]
|
944
944
|
end
|
945
945
|
if chunk1 == ")"
|
946
|
-
address4 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
946
|
+
address4 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
947
947
|
@offset = @offset + 1
|
948
948
|
else
|
949
949
|
address4 = FAILURE
|
@@ -1004,12 +1004,12 @@ module Maps
|
|
1004
1004
|
unless address1 == FAILURE
|
1005
1005
|
elements0 << address1
|
1006
1006
|
address2 = FAILURE
|
1007
|
-
chunk0
|
1008
|
-
if
|
1009
|
-
chunk0 = @input[@offset
|
1007
|
+
chunk0 = nil
|
1008
|
+
if @offset < @input_size
|
1009
|
+
chunk0 = @input[@offset...@offset + 1]
|
1010
1010
|
end
|
1011
1011
|
if chunk0 =~ /\A[\"]/
|
1012
|
-
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1012
|
+
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1013
1013
|
@offset = @offset + 1
|
1014
1014
|
else
|
1015
1015
|
address2 = FAILURE
|
@@ -1026,12 +1026,12 @@ module Maps
|
|
1026
1026
|
address3 = FAILURE
|
1027
1027
|
remaining0, index2, elements1, address4 = 0, @offset, [], true
|
1028
1028
|
until address4 == FAILURE
|
1029
|
-
chunk1
|
1030
|
-
if
|
1031
|
-
chunk1 = @input[@offset
|
1029
|
+
chunk1 = nil
|
1030
|
+
if @offset < @input_size
|
1031
|
+
chunk1 = @input[@offset...@offset + 1]
|
1032
1032
|
end
|
1033
1033
|
if chunk1 =~ /\A[ !#-~]/
|
1034
|
-
address4 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1034
|
+
address4 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1035
1035
|
@offset = @offset + 1
|
1036
1036
|
else
|
1037
1037
|
address4 = FAILURE
|
@@ -1057,12 +1057,12 @@ module Maps
|
|
1057
1057
|
unless address3 == FAILURE
|
1058
1058
|
elements0 << address3
|
1059
1059
|
address5 = FAILURE
|
1060
|
-
chunk2
|
1061
|
-
if
|
1062
|
-
chunk2 = @input[@offset
|
1060
|
+
chunk2 = nil
|
1061
|
+
if @offset < @input_size
|
1062
|
+
chunk2 = @input[@offset...@offset + 1]
|
1063
1063
|
end
|
1064
1064
|
if chunk2 =~ /\A[\"]/
|
1065
|
-
address5 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1065
|
+
address5 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1066
1066
|
@offset = @offset + 1
|
1067
1067
|
else
|
1068
1068
|
address5 = FAILURE
|
@@ -1123,12 +1123,12 @@ module Maps
|
|
1123
1123
|
unless address1 == FAILURE
|
1124
1124
|
elements0 << address1
|
1125
1125
|
address2 = FAILURE
|
1126
|
-
chunk0
|
1127
|
-
if
|
1128
|
-
chunk0 = @input[@offset
|
1126
|
+
chunk0 = nil
|
1127
|
+
if @offset < @input_size
|
1128
|
+
chunk0 = @input[@offset...@offset + 1]
|
1129
1129
|
end
|
1130
1130
|
if chunk0 == "'"
|
1131
|
-
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1131
|
+
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1132
1132
|
@offset = @offset + 1
|
1133
1133
|
else
|
1134
1134
|
address2 = FAILURE
|
@@ -1145,12 +1145,12 @@ module Maps
|
|
1145
1145
|
address3 = FAILURE
|
1146
1146
|
remaining0, index2, elements1, address4 = 0, @offset, [], true
|
1147
1147
|
until address4 == FAILURE
|
1148
|
-
chunk1
|
1149
|
-
if
|
1150
|
-
chunk1 = @input[@offset
|
1148
|
+
chunk1 = nil
|
1149
|
+
if @offset < @input_size
|
1150
|
+
chunk1 = @input[@offset...@offset + 1]
|
1151
1151
|
end
|
1152
1152
|
if chunk1 =~ /\A[^']/
|
1153
|
-
address4 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1153
|
+
address4 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1154
1154
|
@offset = @offset + 1
|
1155
1155
|
else
|
1156
1156
|
address4 = FAILURE
|
@@ -1176,12 +1176,12 @@ module Maps
|
|
1176
1176
|
unless address3 == FAILURE
|
1177
1177
|
elements0 << address3
|
1178
1178
|
address5 = FAILURE
|
1179
|
-
chunk2
|
1180
|
-
if
|
1181
|
-
chunk2 = @input[@offset
|
1179
|
+
chunk2 = nil
|
1180
|
+
if @offset < @input_size
|
1181
|
+
chunk2 = @input[@offset...@offset + 1]
|
1182
1182
|
end
|
1183
1183
|
if chunk2 == "'"
|
1184
|
-
address5 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1184
|
+
address5 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1185
1185
|
@offset = @offset + 1
|
1186
1186
|
else
|
1187
1187
|
address5 = FAILURE
|
@@ -1242,12 +1242,12 @@ module Maps
|
|
1242
1242
|
unless address1 == FAILURE
|
1243
1243
|
elements0 << address1
|
1244
1244
|
address2 = FAILURE
|
1245
|
-
chunk0
|
1246
|
-
if
|
1247
|
-
chunk0 = @input[@offset
|
1245
|
+
chunk0 = nil
|
1246
|
+
if @offset < @input_size
|
1247
|
+
chunk0 = @input[@offset...@offset + 1]
|
1248
1248
|
end
|
1249
1249
|
if chunk0 == "["
|
1250
|
-
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1250
|
+
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1251
1251
|
@offset = @offset + 1
|
1252
1252
|
else
|
1253
1253
|
address2 = FAILURE
|
@@ -1281,12 +1281,12 @@ module Maps
|
|
1281
1281
|
until address8 == FAILURE
|
1282
1282
|
index5, elements3 = @offset, []
|
1283
1283
|
address9 = FAILURE
|
1284
|
-
chunk1
|
1285
|
-
if
|
1286
|
-
chunk1 = @input[@offset
|
1284
|
+
chunk1 = nil
|
1285
|
+
if @offset < @input_size
|
1286
|
+
chunk1 = @input[@offset...@offset + 1]
|
1287
1287
|
end
|
1288
1288
|
if chunk1 == ","
|
1289
|
-
address9 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1289
|
+
address9 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1290
1290
|
@offset = @offset + 1
|
1291
1291
|
else
|
1292
1292
|
address9 = FAILURE
|
@@ -1366,7 +1366,7 @@ module Maps
|
|
1366
1366
|
@offset = @offset
|
1367
1367
|
end
|
1368
1368
|
if address4 == FAILURE
|
1369
|
-
address4 = TreeNode.new(@input[index2...index2], index2
|
1369
|
+
address4 = TreeNode.new(@input[index2...index2], index2)
|
1370
1370
|
@offset = index2
|
1371
1371
|
end
|
1372
1372
|
unless address4 == FAILURE
|
@@ -1376,12 +1376,12 @@ module Maps
|
|
1376
1376
|
unless address13 == FAILURE
|
1377
1377
|
elements0 << address13
|
1378
1378
|
address14 = FAILURE
|
1379
|
-
chunk2
|
1380
|
-
if
|
1381
|
-
chunk2 = @input[@offset
|
1379
|
+
chunk2 = nil
|
1380
|
+
if @offset < @input_size
|
1381
|
+
chunk2 = @input[@offset...@offset + 1]
|
1382
1382
|
end
|
1383
1383
|
if chunk2 == "]"
|
1384
|
-
address14 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1384
|
+
address14 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1385
1385
|
@offset = @offset + 1
|
1386
1386
|
else
|
1387
1387
|
address14 = FAILURE
|
@@ -1450,12 +1450,12 @@ module Maps
|
|
1450
1450
|
unless address1 == FAILURE
|
1451
1451
|
elements0 << address1
|
1452
1452
|
address2 = FAILURE
|
1453
|
-
chunk0
|
1454
|
-
if
|
1455
|
-
chunk0 = @input[@offset
|
1453
|
+
chunk0 = nil
|
1454
|
+
if @offset < @input_size
|
1455
|
+
chunk0 = @input[@offset...@offset + 1]
|
1456
1456
|
end
|
1457
1457
|
if chunk0 =~ /\A[']/
|
1458
|
-
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1458
|
+
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1459
1459
|
@offset = @offset + 1
|
1460
1460
|
else
|
1461
1461
|
address2 = FAILURE
|
@@ -1470,12 +1470,12 @@ module Maps
|
|
1470
1470
|
unless address2 == FAILURE
|
1471
1471
|
elements0 << address2
|
1472
1472
|
address3 = FAILURE
|
1473
|
-
chunk1
|
1474
|
-
if
|
1475
|
-
chunk1 = @input[@offset
|
1473
|
+
chunk1 = nil
|
1474
|
+
if @offset < @input_size
|
1475
|
+
chunk1 = @input[@offset...@offset + 1]
|
1476
1476
|
end
|
1477
1477
|
if chunk1 =~ /\A[ !#-~]/
|
1478
|
-
address3 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1478
|
+
address3 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1479
1479
|
@offset = @offset + 1
|
1480
1480
|
else
|
1481
1481
|
address3 = FAILURE
|
@@ -1490,12 +1490,12 @@ module Maps
|
|
1490
1490
|
unless address3 == FAILURE
|
1491
1491
|
elements0 << address3
|
1492
1492
|
address4 = FAILURE
|
1493
|
-
chunk2
|
1494
|
-
if
|
1495
|
-
chunk2 = @input[@offset
|
1493
|
+
chunk2 = nil
|
1494
|
+
if @offset < @input_size
|
1495
|
+
chunk2 = @input[@offset...@offset + 1]
|
1496
1496
|
end
|
1497
1497
|
if chunk2 =~ /\A[']/
|
1498
|
-
address4 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1498
|
+
address4 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1499
1499
|
@offset = @offset + 1
|
1500
1500
|
else
|
1501
1501
|
address4 = FAILURE
|
@@ -1557,12 +1557,12 @@ module Maps
|
|
1557
1557
|
elements0 << address1
|
1558
1558
|
address2 = FAILURE
|
1559
1559
|
index2 = @offset
|
1560
|
-
chunk0
|
1561
|
-
if
|
1562
|
-
chunk0 = @input[@offset
|
1560
|
+
chunk0 = nil
|
1561
|
+
if @offset < @input_size
|
1562
|
+
chunk0 = @input[@offset...@offset + 1]
|
1563
1563
|
end
|
1564
1564
|
if chunk0 == "-"
|
1565
|
-
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1565
|
+
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1566
1566
|
@offset = @offset + 1
|
1567
1567
|
else
|
1568
1568
|
address2 = FAILURE
|
@@ -1575,7 +1575,7 @@ module Maps
|
|
1575
1575
|
end
|
1576
1576
|
end
|
1577
1577
|
if address2 == FAILURE
|
1578
|
-
address2 = TreeNode.new(@input[index2...index2], index2
|
1578
|
+
address2 = TreeNode.new(@input[index2...index2], index2)
|
1579
1579
|
@offset = index2
|
1580
1580
|
end
|
1581
1581
|
unless address2 == FAILURE
|
@@ -1583,12 +1583,12 @@ module Maps
|
|
1583
1583
|
address3 = FAILURE
|
1584
1584
|
remaining0, index3, elements1, address4 = 1, @offset, [], true
|
1585
1585
|
until address4 == FAILURE
|
1586
|
-
chunk1
|
1587
|
-
if
|
1588
|
-
chunk1 = @input[@offset
|
1586
|
+
chunk1 = nil
|
1587
|
+
if @offset < @input_size
|
1588
|
+
chunk1 = @input[@offset...@offset + 1]
|
1589
1589
|
end
|
1590
1590
|
if chunk1 =~ /\A[0-9]/
|
1591
|
-
address4 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1591
|
+
address4 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1592
1592
|
@offset = @offset + 1
|
1593
1593
|
else
|
1594
1594
|
address4 = FAILURE
|
@@ -1657,12 +1657,12 @@ module Maps
|
|
1657
1657
|
elements0 << address1
|
1658
1658
|
address2 = FAILURE
|
1659
1659
|
index2 = @offset
|
1660
|
-
chunk0
|
1661
|
-
if
|
1662
|
-
chunk0 = @input[@offset
|
1660
|
+
chunk0 = nil
|
1661
|
+
if @offset < @input_size
|
1662
|
+
chunk0 = @input[@offset...@offset + 1]
|
1663
1663
|
end
|
1664
1664
|
if chunk0 == "-"
|
1665
|
-
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1665
|
+
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1666
1666
|
@offset = @offset + 1
|
1667
1667
|
else
|
1668
1668
|
address2 = FAILURE
|
@@ -1675,7 +1675,7 @@ module Maps
|
|
1675
1675
|
end
|
1676
1676
|
end
|
1677
1677
|
if address2 == FAILURE
|
1678
|
-
address2 = TreeNode.new(@input[index2...index2], index2
|
1678
|
+
address2 = TreeNode.new(@input[index2...index2], index2)
|
1679
1679
|
@offset = index2
|
1680
1680
|
end
|
1681
1681
|
unless address2 == FAILURE
|
@@ -1683,12 +1683,12 @@ module Maps
|
|
1683
1683
|
address3 = FAILURE
|
1684
1684
|
remaining0, index3, elements1, address4 = 1, @offset, [], true
|
1685
1685
|
until address4 == FAILURE
|
1686
|
-
chunk1
|
1687
|
-
if
|
1688
|
-
chunk1 = @input[@offset
|
1686
|
+
chunk1 = nil
|
1687
|
+
if @offset < @input_size
|
1688
|
+
chunk1 = @input[@offset...@offset + 1]
|
1689
1689
|
end
|
1690
1690
|
if chunk1 =~ /\A[0-9]/
|
1691
|
-
address4 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1691
|
+
address4 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1692
1692
|
@offset = @offset + 1
|
1693
1693
|
else
|
1694
1694
|
address4 = FAILURE
|
@@ -1714,12 +1714,12 @@ module Maps
|
|
1714
1714
|
unless address3 == FAILURE
|
1715
1715
|
elements0 << address3
|
1716
1716
|
address5 = FAILURE
|
1717
|
-
chunk2
|
1718
|
-
if
|
1719
|
-
chunk2 = @input[@offset
|
1717
|
+
chunk2 = nil
|
1718
|
+
if @offset < @input_size
|
1719
|
+
chunk2 = @input[@offset...@offset + 1]
|
1720
1720
|
end
|
1721
1721
|
if chunk2 == "."
|
1722
|
-
address5 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1722
|
+
address5 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1723
1723
|
@offset = @offset + 1
|
1724
1724
|
else
|
1725
1725
|
address5 = FAILURE
|
@@ -1736,12 +1736,12 @@ module Maps
|
|
1736
1736
|
address6 = FAILURE
|
1737
1737
|
remaining1, index4, elements2, address7 = 1, @offset, [], true
|
1738
1738
|
until address7 == FAILURE
|
1739
|
-
chunk3
|
1740
|
-
if
|
1741
|
-
chunk3 = @input[@offset
|
1739
|
+
chunk3 = nil
|
1740
|
+
if @offset < @input_size
|
1741
|
+
chunk3 = @input[@offset...@offset + 1]
|
1742
1742
|
end
|
1743
1743
|
if chunk3 =~ /\A[0-9]/
|
1744
|
-
address7 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
1744
|
+
address7 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
1745
1745
|
@offset = @offset + 1
|
1746
1746
|
else
|
1747
1747
|
address7 = FAILURE
|
@@ -1818,12 +1818,12 @@ module Maps
|
|
1818
1818
|
elements0 << address1
|
1819
1819
|
address2 = FAILURE
|
1820
1820
|
index2 = @offset
|
1821
|
-
chunk0
|
1822
|
-
if
|
1823
|
-
chunk0 = @input[@offset
|
1821
|
+
chunk0 = nil
|
1822
|
+
if @offset < @input_size
|
1823
|
+
chunk0 = @input[@offset...@offset + 4]
|
1824
1824
|
end
|
1825
1825
|
if chunk0 == "True"
|
1826
|
-
address2 = TreeNode.new(@input[@offset...@offset + 4], @offset
|
1826
|
+
address2 = TreeNode.new(@input[@offset...@offset + 4], @offset)
|
1827
1827
|
@offset = @offset + 4
|
1828
1828
|
else
|
1829
1829
|
address2 = FAILURE
|
@@ -1837,12 +1837,12 @@ module Maps
|
|
1837
1837
|
end
|
1838
1838
|
if address2 == FAILURE
|
1839
1839
|
@offset = index2
|
1840
|
-
chunk1
|
1841
|
-
if
|
1842
|
-
chunk1 = @input[@offset
|
1840
|
+
chunk1 = nil
|
1841
|
+
if @offset < @input_size
|
1842
|
+
chunk1 = @input[@offset...@offset + 4]
|
1843
1843
|
end
|
1844
1844
|
if chunk1 == "true"
|
1845
|
-
address2 = TreeNode.new(@input[@offset...@offset + 4], @offset
|
1845
|
+
address2 = TreeNode.new(@input[@offset...@offset + 4], @offset)
|
1846
1846
|
@offset = @offset + 4
|
1847
1847
|
else
|
1848
1848
|
address2 = FAILURE
|
@@ -1856,12 +1856,12 @@ module Maps
|
|
1856
1856
|
end
|
1857
1857
|
if address2 == FAILURE
|
1858
1858
|
@offset = index2
|
1859
|
-
chunk2
|
1860
|
-
if
|
1861
|
-
chunk2 = @input[@offset
|
1859
|
+
chunk2 = nil
|
1860
|
+
if @offset < @input_size
|
1861
|
+
chunk2 = @input[@offset...@offset + 5]
|
1862
1862
|
end
|
1863
1863
|
if chunk2 == "False"
|
1864
|
-
address2 = TreeNode.new(@input[@offset...@offset + 5], @offset
|
1864
|
+
address2 = TreeNode.new(@input[@offset...@offset + 5], @offset)
|
1865
1865
|
@offset = @offset + 5
|
1866
1866
|
else
|
1867
1867
|
address2 = FAILURE
|
@@ -1875,12 +1875,12 @@ module Maps
|
|
1875
1875
|
end
|
1876
1876
|
if address2 == FAILURE
|
1877
1877
|
@offset = index2
|
1878
|
-
chunk3
|
1879
|
-
if
|
1880
|
-
chunk3 = @input[@offset
|
1878
|
+
chunk3 = nil
|
1879
|
+
if @offset < @input_size
|
1880
|
+
chunk3 = @input[@offset...@offset + 5]
|
1881
1881
|
end
|
1882
1882
|
if chunk3 == "false"
|
1883
|
-
address2 = TreeNode.new(@input[@offset...@offset + 5], @offset
|
1883
|
+
address2 = TreeNode.new(@input[@offset...@offset + 5], @offset)
|
1884
1884
|
@offset = @offset + 5
|
1885
1885
|
else
|
1886
1886
|
address2 = FAILURE
|
@@ -1940,12 +1940,12 @@ module Maps
|
|
1940
1940
|
elements0 << address1
|
1941
1941
|
address2 = FAILURE
|
1942
1942
|
index2 = @offset
|
1943
|
-
chunk0
|
1944
|
-
if
|
1945
|
-
chunk0 = @input[@offset
|
1943
|
+
chunk0 = nil
|
1944
|
+
if @offset < @input_size
|
1945
|
+
chunk0 = @input[@offset...@offset + 4]
|
1946
1946
|
end
|
1947
1947
|
if chunk0 == "None"
|
1948
|
-
address2 = TreeNode.new(@input[@offset...@offset + 4], @offset
|
1948
|
+
address2 = TreeNode.new(@input[@offset...@offset + 4], @offset)
|
1949
1949
|
@offset = @offset + 4
|
1950
1950
|
else
|
1951
1951
|
address2 = FAILURE
|
@@ -1959,12 +1959,12 @@ module Maps
|
|
1959
1959
|
end
|
1960
1960
|
if address2 == FAILURE
|
1961
1961
|
@offset = index2
|
1962
|
-
chunk1
|
1963
|
-
if
|
1964
|
-
chunk1 = @input[@offset
|
1962
|
+
chunk1 = nil
|
1963
|
+
if @offset < @input_size
|
1964
|
+
chunk1 = @input[@offset...@offset + 3]
|
1965
1965
|
end
|
1966
1966
|
if chunk1 == "nil"
|
1967
|
-
address2 = TreeNode.new(@input[@offset...@offset + 3], @offset
|
1967
|
+
address2 = TreeNode.new(@input[@offset...@offset + 3], @offset)
|
1968
1968
|
@offset = @offset + 3
|
1969
1969
|
else
|
1970
1970
|
address2 = FAILURE
|
@@ -1978,12 +1978,12 @@ module Maps
|
|
1978
1978
|
end
|
1979
1979
|
if address2 == FAILURE
|
1980
1980
|
@offset = index2
|
1981
|
-
chunk2
|
1982
|
-
if
|
1983
|
-
chunk2 = @input[@offset
|
1981
|
+
chunk2 = nil
|
1982
|
+
if @offset < @input_size
|
1983
|
+
chunk2 = @input[@offset...@offset + 4]
|
1984
1984
|
end
|
1985
1985
|
if chunk2 == "null"
|
1986
|
-
address2 = TreeNode.new(@input[@offset...@offset + 4], @offset
|
1986
|
+
address2 = TreeNode.new(@input[@offset...@offset + 4], @offset)
|
1987
1987
|
@offset = @offset + 4
|
1988
1988
|
else
|
1989
1989
|
address2 = FAILURE
|
@@ -2041,12 +2041,12 @@ module Maps
|
|
2041
2041
|
unless address1 == FAILURE
|
2042
2042
|
elements0 << address1
|
2043
2043
|
address2 = FAILURE
|
2044
|
-
chunk0
|
2045
|
-
if
|
2046
|
-
chunk0 = @input[@offset
|
2044
|
+
chunk0 = nil
|
2045
|
+
if @offset < @input_size
|
2046
|
+
chunk0 = @input[@offset...@offset + 9]
|
2047
2047
|
end
|
2048
2048
|
if chunk0 == "undefined"
|
2049
|
-
address2 = TreeNode.new(@input[@offset...@offset + 9], @offset
|
2049
|
+
address2 = TreeNode.new(@input[@offset...@offset + 9], @offset)
|
2050
2050
|
@offset = @offset + 9
|
2051
2051
|
else
|
2052
2052
|
address2 = FAILURE
|
@@ -2100,12 +2100,12 @@ module Maps
|
|
2100
2100
|
elements0 << address1
|
2101
2101
|
address2 = FAILURE
|
2102
2102
|
index2 = @offset
|
2103
|
-
chunk0
|
2104
|
-
if
|
2105
|
-
chunk0 = @input[@offset
|
2103
|
+
chunk0 = nil
|
2104
|
+
if @offset < @input_size
|
2105
|
+
chunk0 = @input[@offset...@offset + 1]
|
2106
2106
|
end
|
2107
2107
|
if chunk0 == "+"
|
2108
|
-
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
2108
|
+
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
2109
2109
|
@offset = @offset + 1
|
2110
2110
|
else
|
2111
2111
|
address2 = FAILURE
|
@@ -2119,12 +2119,12 @@ module Maps
|
|
2119
2119
|
end
|
2120
2120
|
if address2 == FAILURE
|
2121
2121
|
@offset = index2
|
2122
|
-
chunk1
|
2123
|
-
if
|
2124
|
-
chunk1 = @input[@offset
|
2122
|
+
chunk1 = nil
|
2123
|
+
if @offset < @input_size
|
2124
|
+
chunk1 = @input[@offset...@offset + 1]
|
2125
2125
|
end
|
2126
2126
|
if chunk1 == "-"
|
2127
|
-
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
2127
|
+
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
2128
2128
|
@offset = @offset + 1
|
2129
2129
|
else
|
2130
2130
|
address2 = FAILURE
|
@@ -2138,12 +2138,12 @@ module Maps
|
|
2138
2138
|
end
|
2139
2139
|
if address2 == FAILURE
|
2140
2140
|
@offset = index2
|
2141
|
-
chunk2
|
2142
|
-
if
|
2143
|
-
chunk2 = @input[@offset
|
2141
|
+
chunk2 = nil
|
2142
|
+
if @offset < @input_size
|
2143
|
+
chunk2 = @input[@offset...@offset + 1]
|
2144
2144
|
end
|
2145
2145
|
if chunk2 == "*"
|
2146
|
-
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
2146
|
+
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
2147
2147
|
@offset = @offset + 1
|
2148
2148
|
else
|
2149
2149
|
address2 = FAILURE
|
@@ -2157,12 +2157,12 @@ module Maps
|
|
2157
2157
|
end
|
2158
2158
|
if address2 == FAILURE
|
2159
2159
|
@offset = index2
|
2160
|
-
chunk3
|
2161
|
-
if
|
2162
|
-
chunk3 = @input[@offset
|
2160
|
+
chunk3 = nil
|
2161
|
+
if @offset < @input_size
|
2162
|
+
chunk3 = @input[@offset...@offset + 1]
|
2163
2163
|
end
|
2164
2164
|
if chunk3 == "/"
|
2165
|
-
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
2165
|
+
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
2166
2166
|
@offset = @offset + 1
|
2167
2167
|
else
|
2168
2168
|
address2 = FAILURE
|
@@ -2176,12 +2176,12 @@ module Maps
|
|
2176
2176
|
end
|
2177
2177
|
if address2 == FAILURE
|
2178
2178
|
@offset = index2
|
2179
|
-
chunk4
|
2180
|
-
if
|
2181
|
-
chunk4 = @input[@offset
|
2179
|
+
chunk4 = nil
|
2180
|
+
if @offset < @input_size
|
2181
|
+
chunk4 = @input[@offset...@offset + 2]
|
2182
2182
|
end
|
2183
2183
|
if chunk4 == "<="
|
2184
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2184
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2185
2185
|
@offset = @offset + 2
|
2186
2186
|
else
|
2187
2187
|
address2 = FAILURE
|
@@ -2195,12 +2195,12 @@ module Maps
|
|
2195
2195
|
end
|
2196
2196
|
if address2 == FAILURE
|
2197
2197
|
@offset = index2
|
2198
|
-
chunk5
|
2199
|
-
if
|
2200
|
-
chunk5 = @input[@offset
|
2198
|
+
chunk5 = nil
|
2199
|
+
if @offset < @input_size
|
2200
|
+
chunk5 = @input[@offset...@offset + 2]
|
2201
2201
|
end
|
2202
2202
|
if chunk5 == ">="
|
2203
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2203
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2204
2204
|
@offset = @offset + 2
|
2205
2205
|
else
|
2206
2206
|
address2 = FAILURE
|
@@ -2214,12 +2214,12 @@ module Maps
|
|
2214
2214
|
end
|
2215
2215
|
if address2 == FAILURE
|
2216
2216
|
@offset = index2
|
2217
|
-
chunk6
|
2218
|
-
if
|
2219
|
-
chunk6 = @input[@offset
|
2217
|
+
chunk6 = nil
|
2218
|
+
if @offset < @input_size
|
2219
|
+
chunk6 = @input[@offset...@offset + 2]
|
2220
2220
|
end
|
2221
2221
|
if chunk6 == "!="
|
2222
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2222
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2223
2223
|
@offset = @offset + 2
|
2224
2224
|
else
|
2225
2225
|
address2 = FAILURE
|
@@ -2233,12 +2233,12 @@ module Maps
|
|
2233
2233
|
end
|
2234
2234
|
if address2 == FAILURE
|
2235
2235
|
@offset = index2
|
2236
|
-
chunk7
|
2237
|
-
if
|
2238
|
-
chunk7 = @input[@offset
|
2236
|
+
chunk7 = nil
|
2237
|
+
if @offset < @input_size
|
2238
|
+
chunk7 = @input[@offset...@offset + 2]
|
2239
2239
|
end
|
2240
2240
|
if chunk7 == "=="
|
2241
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2241
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2242
2242
|
@offset = @offset + 2
|
2243
2243
|
else
|
2244
2244
|
address2 = FAILURE
|
@@ -2252,12 +2252,12 @@ module Maps
|
|
2252
2252
|
end
|
2253
2253
|
if address2 == FAILURE
|
2254
2254
|
@offset = index2
|
2255
|
-
chunk8
|
2256
|
-
if
|
2257
|
-
chunk8 = @input[@offset
|
2255
|
+
chunk8 = nil
|
2256
|
+
if @offset < @input_size
|
2257
|
+
chunk8 = @input[@offset...@offset + 1]
|
2258
2258
|
end
|
2259
2259
|
if chunk8 == "="
|
2260
|
-
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
2260
|
+
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
2261
2261
|
@offset = @offset + 1
|
2262
2262
|
else
|
2263
2263
|
address2 = FAILURE
|
@@ -2271,12 +2271,12 @@ module Maps
|
|
2271
2271
|
end
|
2272
2272
|
if address2 == FAILURE
|
2273
2273
|
@offset = index2
|
2274
|
-
chunk9
|
2275
|
-
if
|
2276
|
-
chunk9 = @input[@offset
|
2274
|
+
chunk9 = nil
|
2275
|
+
if @offset < @input_size
|
2276
|
+
chunk9 = @input[@offset...@offset + 1]
|
2277
2277
|
end
|
2278
2278
|
if chunk9 == ">"
|
2279
|
-
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
2279
|
+
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
2280
2280
|
@offset = @offset + 1
|
2281
2281
|
else
|
2282
2282
|
address2 = FAILURE
|
@@ -2290,12 +2290,12 @@ module Maps
|
|
2290
2290
|
end
|
2291
2291
|
if address2 == FAILURE
|
2292
2292
|
@offset = index2
|
2293
|
-
chunk10
|
2294
|
-
if
|
2295
|
-
chunk10 = @input[@offset
|
2293
|
+
chunk10 = nil
|
2294
|
+
if @offset < @input_size
|
2295
|
+
chunk10 = @input[@offset...@offset + 1]
|
2296
2296
|
end
|
2297
2297
|
if chunk10 == "<"
|
2298
|
-
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
2298
|
+
address2 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
2299
2299
|
@offset = @offset + 1
|
2300
2300
|
else
|
2301
2301
|
address2 = FAILURE
|
@@ -2309,12 +2309,12 @@ module Maps
|
|
2309
2309
|
end
|
2310
2310
|
if address2 == FAILURE
|
2311
2311
|
@offset = index2
|
2312
|
-
chunk11
|
2313
|
-
if
|
2314
|
-
chunk11 = @input[@offset
|
2312
|
+
chunk11 = nil
|
2313
|
+
if @offset < @input_size
|
2314
|
+
chunk11 = @input[@offset...@offset + 2]
|
2315
2315
|
end
|
2316
2316
|
if chunk11 == "LT"
|
2317
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2317
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2318
2318
|
@offset = @offset + 2
|
2319
2319
|
else
|
2320
2320
|
address2 = FAILURE
|
@@ -2328,12 +2328,12 @@ module Maps
|
|
2328
2328
|
end
|
2329
2329
|
if address2 == FAILURE
|
2330
2330
|
@offset = index2
|
2331
|
-
chunk12
|
2332
|
-
if
|
2333
|
-
chunk12 = @input[@offset
|
2331
|
+
chunk12 = nil
|
2332
|
+
if @offset < @input_size
|
2333
|
+
chunk12 = @input[@offset...@offset + 2]
|
2334
2334
|
end
|
2335
2335
|
if chunk12 == "GT"
|
2336
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2336
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2337
2337
|
@offset = @offset + 2
|
2338
2338
|
else
|
2339
2339
|
address2 = FAILURE
|
@@ -2347,12 +2347,12 @@ module Maps
|
|
2347
2347
|
end
|
2348
2348
|
if address2 == FAILURE
|
2349
2349
|
@offset = index2
|
2350
|
-
chunk13
|
2351
|
-
if
|
2352
|
-
chunk13 = @input[@offset
|
2350
|
+
chunk13 = nil
|
2351
|
+
if @offset < @input_size
|
2352
|
+
chunk13 = @input[@offset...@offset + 2]
|
2353
2353
|
end
|
2354
2354
|
if chunk13 == "LE"
|
2355
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2355
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2356
2356
|
@offset = @offset + 2
|
2357
2357
|
else
|
2358
2358
|
address2 = FAILURE
|
@@ -2366,12 +2366,12 @@ module Maps
|
|
2366
2366
|
end
|
2367
2367
|
if address2 == FAILURE
|
2368
2368
|
@offset = index2
|
2369
|
-
chunk14
|
2370
|
-
if
|
2371
|
-
chunk14 = @input[@offset
|
2369
|
+
chunk14 = nil
|
2370
|
+
if @offset < @input_size
|
2371
|
+
chunk14 = @input[@offset...@offset + 2]
|
2372
2372
|
end
|
2373
2373
|
if chunk14 == "GE"
|
2374
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2374
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2375
2375
|
@offset = @offset + 2
|
2376
2376
|
else
|
2377
2377
|
address2 = FAILURE
|
@@ -2385,12 +2385,12 @@ module Maps
|
|
2385
2385
|
end
|
2386
2386
|
if address2 == FAILURE
|
2387
2387
|
@offset = index2
|
2388
|
-
chunk15
|
2389
|
-
if
|
2390
|
-
chunk15 = @input[@offset
|
2388
|
+
chunk15 = nil
|
2389
|
+
if @offset < @input_size
|
2390
|
+
chunk15 = @input[@offset...@offset + 2]
|
2391
2391
|
end
|
2392
2392
|
if chunk15 == "EQ"
|
2393
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2393
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2394
2394
|
@offset = @offset + 2
|
2395
2395
|
else
|
2396
2396
|
address2 = FAILURE
|
@@ -2404,12 +2404,12 @@ module Maps
|
|
2404
2404
|
end
|
2405
2405
|
if address2 == FAILURE
|
2406
2406
|
@offset = index2
|
2407
|
-
chunk16
|
2408
|
-
if
|
2409
|
-
chunk16 = @input[@offset
|
2407
|
+
chunk16 = nil
|
2408
|
+
if @offset < @input_size
|
2409
|
+
chunk16 = @input[@offset...@offset + 2]
|
2410
2410
|
end
|
2411
2411
|
if chunk16 == "NE"
|
2412
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2412
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2413
2413
|
@offset = @offset + 2
|
2414
2414
|
else
|
2415
2415
|
address2 = FAILURE
|
@@ -2423,12 +2423,12 @@ module Maps
|
|
2423
2423
|
end
|
2424
2424
|
if address2 == FAILURE
|
2425
2425
|
@offset = index2
|
2426
|
-
chunk17
|
2427
|
-
if
|
2428
|
-
chunk17 = @input[@offset
|
2426
|
+
chunk17 = nil
|
2427
|
+
if @offset < @input_size
|
2428
|
+
chunk17 = @input[@offset...@offset + 2]
|
2429
2429
|
end
|
2430
2430
|
if chunk17 == "lt"
|
2431
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2431
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2432
2432
|
@offset = @offset + 2
|
2433
2433
|
else
|
2434
2434
|
address2 = FAILURE
|
@@ -2442,12 +2442,12 @@ module Maps
|
|
2442
2442
|
end
|
2443
2443
|
if address2 == FAILURE
|
2444
2444
|
@offset = index2
|
2445
|
-
chunk18
|
2446
|
-
if
|
2447
|
-
chunk18 = @input[@offset
|
2445
|
+
chunk18 = nil
|
2446
|
+
if @offset < @input_size
|
2447
|
+
chunk18 = @input[@offset...@offset + 2]
|
2448
2448
|
end
|
2449
2449
|
if chunk18 == "gt"
|
2450
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2450
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2451
2451
|
@offset = @offset + 2
|
2452
2452
|
else
|
2453
2453
|
address2 = FAILURE
|
@@ -2461,12 +2461,12 @@ module Maps
|
|
2461
2461
|
end
|
2462
2462
|
if address2 == FAILURE
|
2463
2463
|
@offset = index2
|
2464
|
-
chunk19
|
2465
|
-
if
|
2466
|
-
chunk19 = @input[@offset
|
2464
|
+
chunk19 = nil
|
2465
|
+
if @offset < @input_size
|
2466
|
+
chunk19 = @input[@offset...@offset + 2]
|
2467
2467
|
end
|
2468
2468
|
if chunk19 == "le"
|
2469
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2469
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2470
2470
|
@offset = @offset + 2
|
2471
2471
|
else
|
2472
2472
|
address2 = FAILURE
|
@@ -2480,12 +2480,12 @@ module Maps
|
|
2480
2480
|
end
|
2481
2481
|
if address2 == FAILURE
|
2482
2482
|
@offset = index2
|
2483
|
-
chunk20
|
2484
|
-
if
|
2485
|
-
chunk20 = @input[@offset
|
2483
|
+
chunk20 = nil
|
2484
|
+
if @offset < @input_size
|
2485
|
+
chunk20 = @input[@offset...@offset + 2]
|
2486
2486
|
end
|
2487
2487
|
if chunk20 == "ge"
|
2488
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2488
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2489
2489
|
@offset = @offset + 2
|
2490
2490
|
else
|
2491
2491
|
address2 = FAILURE
|
@@ -2499,12 +2499,12 @@ module Maps
|
|
2499
2499
|
end
|
2500
2500
|
if address2 == FAILURE
|
2501
2501
|
@offset = index2
|
2502
|
-
chunk21
|
2503
|
-
if
|
2504
|
-
chunk21 = @input[@offset
|
2502
|
+
chunk21 = nil
|
2503
|
+
if @offset < @input_size
|
2504
|
+
chunk21 = @input[@offset...@offset + 2]
|
2505
2505
|
end
|
2506
2506
|
if chunk21 == "eq"
|
2507
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2507
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2508
2508
|
@offset = @offset + 2
|
2509
2509
|
else
|
2510
2510
|
address2 = FAILURE
|
@@ -2518,12 +2518,12 @@ module Maps
|
|
2518
2518
|
end
|
2519
2519
|
if address2 == FAILURE
|
2520
2520
|
@offset = index2
|
2521
|
-
chunk22
|
2522
|
-
if
|
2523
|
-
chunk22 = @input[@offset
|
2521
|
+
chunk22 = nil
|
2522
|
+
if @offset < @input_size
|
2523
|
+
chunk22 = @input[@offset...@offset + 2]
|
2524
2524
|
end
|
2525
2525
|
if chunk22 == "ne"
|
2526
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2526
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2527
2527
|
@offset = @offset + 2
|
2528
2528
|
else
|
2529
2529
|
address2 = FAILURE
|
@@ -2537,12 +2537,12 @@ module Maps
|
|
2537
2537
|
end
|
2538
2538
|
if address2 == FAILURE
|
2539
2539
|
@offset = index2
|
2540
|
-
chunk23
|
2541
|
-
if
|
2542
|
-
chunk23 = @input[@offset
|
2540
|
+
chunk23 = nil
|
2541
|
+
if @offset < @input_size
|
2542
|
+
chunk23 = @input[@offset...@offset + 2]
|
2543
2543
|
end
|
2544
2544
|
if chunk23 == "in"
|
2545
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2545
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2546
2546
|
@offset = @offset + 2
|
2547
2547
|
else
|
2548
2548
|
address2 = FAILURE
|
@@ -2556,12 +2556,12 @@ module Maps
|
|
2556
2556
|
end
|
2557
2557
|
if address2 == FAILURE
|
2558
2558
|
@offset = index2
|
2559
|
-
chunk24
|
2560
|
-
if
|
2561
|
-
chunk24 = @input[@offset
|
2559
|
+
chunk24 = nil
|
2560
|
+
if @offset < @input_size
|
2561
|
+
chunk24 = @input[@offset...@offset + 2]
|
2562
2562
|
end
|
2563
2563
|
if chunk24 == "IN"
|
2564
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2564
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2565
2565
|
@offset = @offset + 2
|
2566
2566
|
else
|
2567
2567
|
address2 = FAILURE
|
@@ -2575,12 +2575,12 @@ module Maps
|
|
2575
2575
|
end
|
2576
2576
|
if address2 == FAILURE
|
2577
2577
|
@offset = index2
|
2578
|
-
chunk25
|
2579
|
-
if
|
2580
|
-
chunk25 = @input[@offset
|
2578
|
+
chunk25 = nil
|
2579
|
+
if @offset < @input_size
|
2580
|
+
chunk25 = @input[@offset...@offset + 2]
|
2581
2581
|
end
|
2582
2582
|
if chunk25 == "or"
|
2583
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2583
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2584
2584
|
@offset = @offset + 2
|
2585
2585
|
else
|
2586
2586
|
address2 = FAILURE
|
@@ -2594,12 +2594,12 @@ module Maps
|
|
2594
2594
|
end
|
2595
2595
|
if address2 == FAILURE
|
2596
2596
|
@offset = index2
|
2597
|
-
chunk26
|
2598
|
-
if
|
2599
|
-
chunk26 = @input[@offset
|
2597
|
+
chunk26 = nil
|
2598
|
+
if @offset < @input_size
|
2599
|
+
chunk26 = @input[@offset...@offset + 2]
|
2600
2600
|
end
|
2601
2601
|
if chunk26 == "OR"
|
2602
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2602
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2603
2603
|
@offset = @offset + 2
|
2604
2604
|
else
|
2605
2605
|
address2 = FAILURE
|
@@ -2613,12 +2613,12 @@ module Maps
|
|
2613
2613
|
end
|
2614
2614
|
if address2 == FAILURE
|
2615
2615
|
@offset = index2
|
2616
|
-
chunk27
|
2617
|
-
if
|
2618
|
-
chunk27 = @input[@offset
|
2616
|
+
chunk27 = nil
|
2617
|
+
if @offset < @input_size
|
2618
|
+
chunk27 = @input[@offset...@offset + 2]
|
2619
2619
|
end
|
2620
2620
|
if chunk27 == "||"
|
2621
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2621
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2622
2622
|
@offset = @offset + 2
|
2623
2623
|
else
|
2624
2624
|
address2 = FAILURE
|
@@ -2632,12 +2632,12 @@ module Maps
|
|
2632
2632
|
end
|
2633
2633
|
if address2 == FAILURE
|
2634
2634
|
@offset = index2
|
2635
|
-
chunk28
|
2636
|
-
if
|
2637
|
-
chunk28 = @input[@offset
|
2635
|
+
chunk28 = nil
|
2636
|
+
if @offset < @input_size
|
2637
|
+
chunk28 = @input[@offset...@offset + 3]
|
2638
2638
|
end
|
2639
2639
|
if chunk28 == "and"
|
2640
|
-
address2 = TreeNode.new(@input[@offset...@offset + 3], @offset
|
2640
|
+
address2 = TreeNode.new(@input[@offset...@offset + 3], @offset)
|
2641
2641
|
@offset = @offset + 3
|
2642
2642
|
else
|
2643
2643
|
address2 = FAILURE
|
@@ -2651,12 +2651,12 @@ module Maps
|
|
2651
2651
|
end
|
2652
2652
|
if address2 == FAILURE
|
2653
2653
|
@offset = index2
|
2654
|
-
chunk29
|
2655
|
-
if
|
2656
|
-
chunk29 = @input[@offset
|
2654
|
+
chunk29 = nil
|
2655
|
+
if @offset < @input_size
|
2656
|
+
chunk29 = @input[@offset...@offset + 3]
|
2657
2657
|
end
|
2658
2658
|
if chunk29 == "AND"
|
2659
|
-
address2 = TreeNode.new(@input[@offset...@offset + 3], @offset
|
2659
|
+
address2 = TreeNode.new(@input[@offset...@offset + 3], @offset)
|
2660
2660
|
@offset = @offset + 3
|
2661
2661
|
else
|
2662
2662
|
address2 = FAILURE
|
@@ -2670,12 +2670,12 @@ module Maps
|
|
2670
2670
|
end
|
2671
2671
|
if address2 == FAILURE
|
2672
2672
|
@offset = index2
|
2673
|
-
chunk30
|
2674
|
-
if
|
2675
|
-
chunk30 = @input[@offset
|
2673
|
+
chunk30 = nil
|
2674
|
+
if @offset < @input_size
|
2675
|
+
chunk30 = @input[@offset...@offset + 2]
|
2676
2676
|
end
|
2677
2677
|
if chunk30 == "&&"
|
2678
|
-
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset
|
2678
|
+
address2 = TreeNode.new(@input[@offset...@offset + 2], @offset)
|
2679
2679
|
@offset = @offset + 2
|
2680
2680
|
else
|
2681
2681
|
address2 = FAILURE
|
@@ -2757,12 +2757,12 @@ module Maps
|
|
2757
2757
|
end
|
2758
2758
|
remaining0, index1, elements0, address1 = 0, @offset, [], true
|
2759
2759
|
until address1 == FAILURE
|
2760
|
-
chunk0
|
2761
|
-
if
|
2762
|
-
chunk0 = @input[@offset
|
2760
|
+
chunk0 = nil
|
2761
|
+
if @offset < @input_size
|
2762
|
+
chunk0 = @input[@offset...@offset + 1]
|
2763
2763
|
end
|
2764
2764
|
if chunk0 =~ /\A[\s]/
|
2765
|
-
address1 = TreeNode.new(@input[@offset...@offset + 1], @offset
|
2765
|
+
address1 = TreeNode.new(@input[@offset...@offset + 1], @offset)
|
2766
2766
|
@offset = @offset + 1
|
2767
2767
|
else
|
2768
2768
|
address1 = FAILURE
|