graphql 1.9.12 → 1.9.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/generators/graphql/templates/base_interface.erb +2 -0
- data/lib/generators/graphql/templates/base_object.erb +1 -0
- data/lib/graphql/analysis/ast.rb +0 -1
- data/lib/graphql/analysis/ast/analyzer.rb +12 -9
- data/lib/graphql/execution_error.rb +3 -2
- data/lib/graphql/language/lexer.rb +106 -105
- data/lib/graphql/language/lexer.rl +12 -1
- data/lib/graphql/language/visitor.rb +9 -6
- data/lib/graphql/query.rb +4 -0
- data/lib/graphql/scalar_type.rb +1 -3
- data/lib/graphql/schema/argument.rb +11 -1
- data/lib/graphql/schema/relay_classic_mutation.rb +5 -1
- data/lib/graphql/types/iso_8601_date.rb +34 -0
- data/lib/graphql/types/iso_8601_date_time.rb +2 -0
- data/lib/graphql/types/relay/node_field.rb +1 -1
- data/lib/graphql/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 47b6474c73ea5544cd3abc58bb77c9c76ef43d6456f3169eaf0b9f1047e74ff4
|
4
|
+
data.tar.gz: 44b1af893736e6a7e7ef6f01ff2ef355494846b9899b9f7dcc2859f913e17884
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bda09371e97f5f0530e298a1ce373822031362405697137a02361e3f4abb955cb44c5dd47b2c16deea91b893db29531b400c20ffb480c8a9cf4606f70232e1da
|
7
|
+
data.tar.gz: a5a9b8547e68f50df8d632b786ff48fd9c3bbb2670b79d3e7a401d2287fdea30d6ef29fd2ee44d78c043dd230a3a95b0d888723947cf0bd35a29a9c40e23f890
|
data/lib/graphql/analysis/ast.rb
CHANGED
@@ -25,15 +25,18 @@ module GraphQL
|
|
25
25
|
raise NotImplementedError
|
26
26
|
end
|
27
27
|
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
28
|
+
class << self
|
29
|
+
private
|
30
|
+
|
31
|
+
def build_visitor_hooks(member_name)
|
32
|
+
class_eval(<<-EOS, __FILE__, __LINE__ + 1)
|
33
|
+
def on_enter_#{member_name}(node, parent, visitor)
|
34
|
+
end
|
35
|
+
|
36
|
+
def on_leave_#{member_name}(node, parent, visitor)
|
37
|
+
end
|
38
|
+
EOS
|
39
|
+
end
|
37
40
|
end
|
38
41
|
|
39
42
|
build_visitor_hooks :argument
|
@@ -48,8 +48,9 @@ module GraphQL
|
|
48
48
|
hash.merge!(options)
|
49
49
|
end
|
50
50
|
if extensions
|
51
|
-
hash["extensions"]
|
52
|
-
|
51
|
+
hash["extensions"] = extensions.each_with_object({}) { |(key, value), ext|
|
52
|
+
ext[key.to_s] = value
|
53
|
+
}
|
53
54
|
end
|
54
55
|
hash
|
55
56
|
end
|
@@ -22,7 +22,7 @@ class << self
|
|
22
22
|
private :_graphql_lexer_trans_keys, :_graphql_lexer_trans_keys=
|
23
23
|
end
|
24
24
|
self._graphql_lexer_trans_keys = [
|
25
|
-
4,
|
25
|
+
1, 0, 4, 22, 4, 43, 14, 46, 14, 46, 14, 46, 14, 46, 4, 22, 4, 4, 4, 4, 4, 22, 4, 4, 4, 4, 14, 15, 14, 15, 10, 15, 12, 12, 4, 22, 4, 43, 14, 46, 14, 46, 14, 46, 14, 46, 0, 49, 0, 0, 4, 22, 4, 4, 4, 4, 4, 4, 4, 22, 4, 4, 4, 4, 1, 1, 14, 15, 10, 29, 14, 15, 10, 29, 10, 29, 12, 12, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 14, 46, 4, 4, 0 ,
|
26
26
|
]
|
27
27
|
|
28
28
|
class << self
|
@@ -30,7 +30,7 @@ class << self
|
|
30
30
|
private :_graphql_lexer_char_class, :_graphql_lexer_char_class=
|
31
31
|
end
|
32
32
|
self._graphql_lexer_char_class = [
|
33
|
-
0, 1, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 3, 4, 5, 6, 2, 7, 2, 8, 9, 2, 10, 0, 11, 12,
|
33
|
+
0, 1, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 3, 4, 5, 6, 2, 7, 2, 8, 9, 2, 10, 0, 11, 12, 13, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16, 2, 2, 17, 2, 2, 18, 19, 19, 19, 19, 20, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 21, 22, 23, 2, 24, 2, 25, 26, 27, 28, 29, 30, 31, 32, 33, 19, 19, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 19, 45, 46, 19, 47, 48, 49, 0 ,
|
34
34
|
]
|
35
35
|
|
36
36
|
class << self
|
@@ -38,7 +38,7 @@ class << self
|
|
38
38
|
private :_graphql_lexer_index_offsets, :_graphql_lexer_index_offsets=
|
39
39
|
end
|
40
40
|
self._graphql_lexer_index_offsets = [
|
41
|
-
0,
|
41
|
+
0, 0, 19, 59, 92, 125, 158, 191, 210, 211, 212, 231, 232, 233, 235, 237, 243, 244, 263, 303, 336, 369, 402, 435, 485, 486, 505, 506, 507, 508, 527, 528, 529, 530, 532, 552, 554, 574, 594, 595, 628, 661, 694, 727, 760, 793, 826, 859, 892, 925, 958, 991, 1024, 1057, 1090, 1123, 1156, 1189, 1222, 1255, 1288, 1321, 1354, 1387, 1420, 1453, 1486, 1519, 1552, 1585, 1618, 1651, 1684, 1717, 1750, 1783, 1816, 1849, 1882, 1915, 1948, 1981, 2014, 2047, 2080, 2113, 2146, 2179, 2212, 2245, 2278, 2311, 2344, 2377, 2410, 2443, 2476, 2509, 2542, 2575, 2608, 2641, 2674, 2707, 2740, 2773, 2806, 2839, 2872, 2905, 2938, 2971, 3004, 3037, 3070, 3103, 3136, 3169, 3202, 3235, 3268, 3301, 3334, 3367, 3400, 3433, 0 ,
|
42
42
|
]
|
43
43
|
|
44
44
|
class << self
|
@@ -46,7 +46,7 @@ class << self
|
|
46
46
|
private :_graphql_lexer_indicies, :_graphql_lexer_indicies=
|
47
47
|
end
|
48
48
|
self._graphql_lexer_indicies = [
|
49
|
-
2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 6, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 7, 8, 9, 10, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 7, 11, 12, 13, 13, 15, 15, 16, 16, 0, 13, 13, 18, 20, 21, 19, 22, 23, 24, 25, 26, 27, 28, 19, 29, 30, 31, 32, 33, 34, 35, 36, 36, 37, 19, 38, 36, 36, 36, 39, 40, 41, 36, 36, 42, 36, 43, 44, 45, 36, 46, 36, 47, 48, 49, 36, 36, 36, 50, 51, 52, 20, 55, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 5, 58, 59, 60, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 7, 61, 9, 62, 31, 32, 16, 16, 64, 13, 13, 63, 63, 63, 63, 65, 63, 63, 63, 63, 63, 63, 63, 65, 13, 13, 16, 16, 66, 15, 15, 66, 66, 66, 66, 65, 66, 66, 66, 66, 66, 66, 66, 65, 16, 16, 64, 32, 32, 63, 63, 63, 63, 65, 63, 63, 63, 63, 63, 63, 63, 65, 67, 36, 36, 0, 0, 0, 36, 36, 0, 0, 0, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 69, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 70, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 71, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 72, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 73, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 74, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 75, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 76, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 77, 36, 36, 36, 36, 36, 36, 36, 36, 78, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 79, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 80, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 81, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 82, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 83, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 84, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 85, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 86, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 87, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 88, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 89, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 90, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 91, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 92, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 93, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 94, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 95, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 96, 97, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 98, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 99, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 100, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 101, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 102, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 103, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 104, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 105, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 106, 36, 36, 36, 107, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 108, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 109, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 110, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 111, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 112, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 113, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 114, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 115, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 116, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 117, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 118, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 119, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 120, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 121, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 122, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 123, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 124, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 125, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 126, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 127, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 128, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 129, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 130, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 131, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 132, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 133, 36, 36, 36, 36, 36, 36, 134, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 135, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 136, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 137, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 138, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 139, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 140, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 141, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 142, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 143, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 144, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 145, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 146, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 147, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 148, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 149, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 150, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 151, 36, 36, 36, 36, 36, 152, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 153, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 154, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 155, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 156, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 157, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 158, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 159, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 68, 68, 68, 36, 36, 68, 68, 68, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 160, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 0 ,
|
49
|
+
2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 4, 5, 5, 0, 0, 0, 5, 5, 0, 0, 0, 0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 0, 0, 0, 6, 6, 0, 0, 0, 0, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 0, 0, 0, 7, 7, 0, 0, 0, 0, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 10, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 11, 12, 13, 14, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 11, 15, 16, 17, 17, 19, 19, 20, 20, 8, 8, 17, 17, 21, 23, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 24, 22, 25, 25, 25, 25, 25, 25, 25, 25, 22, 25, 25, 25, 25, 25, 25, 25, 25, 22, 25, 25, 25, 22, 25, 25, 25, 22, 25, 25, 25, 25, 25, 22, 25, 25, 25, 22, 25, 22, 26, 27, 27, 25, 25, 25, 27, 27, 25, 25, 25, 25, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 28, 28, 25, 25, 25, 28, 28, 25, 25, 25, 25, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 29, 29, 25, 25, 25, 29, 29, 25, 25, 25, 25, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 22, 22, 25, 25, 25, 22, 22, 25, 25, 25, 25, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 31, 32, 30, 33, 34, 35, 36, 37, 38, 39, 30, 40, 41, 30, 42, 43, 44, 45, 46, 47, 47, 48, 30, 49, 47, 47, 47, 47, 50, 51, 52, 47, 47, 53, 47, 54, 55, 56, 47, 57, 47, 58, 59, 60, 47, 47, 47, 61, 62, 63, 31, 66, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 9, 69, 70, 71, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 11, 72, 13, 73, 42, 43, 20, 20, 75, 74, 17, 17, 74, 74, 74, 74, 76, 74, 74, 74, 74, 74, 74, 74, 74, 76, 17, 17, 20, 20, 77, 77, 19, 19, 77, 77, 77, 77, 76, 77, 77, 77, 77, 77, 77, 77, 77, 76, 20, 20, 75, 74, 43, 43, 74, 74, 74, 74, 76, 74, 74, 74, 74, 74, 74, 74, 74, 76, 78, 47, 47, 8, 8, 8, 47, 47, 8, 8, 8, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 80, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 81, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 82, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 83, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 84, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 85, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 86, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 87, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 88, 47, 47, 47, 47, 47, 47, 47, 47, 89, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 90, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 91, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 92, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 93, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 94, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 95, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 96, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 97, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 98, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 99, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 100, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 101, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 102, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 103, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 104, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 105, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 106, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 107, 108, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 109, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 110, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 111, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 112, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 113, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 114, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 115, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 116, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 117, 47, 47, 47, 118, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 119, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 120, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 121, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 122, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 123, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 124, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 125, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 126, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 127, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 128, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 129, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 130, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 131, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 132, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 133, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 134, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 135, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 136, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 137, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 138, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 139, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 140, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 141, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 142, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 143, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 144, 47, 47, 47, 47, 47, 47, 145, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 146, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 147, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 148, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 149, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 150, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 151, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 152, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 153, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 154, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 155, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 156, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 157, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 158, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 159, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 160, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 161, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 162, 47, 47, 47, 47, 47, 163, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 164, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 165, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 166, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 167, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 168, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 169, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 170, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 79, 79, 79, 47, 47, 79, 79, 79, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 171, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 22, 0 ,
|
50
50
|
]
|
51
51
|
|
52
52
|
class << self
|
@@ -54,7 +54,7 @@ class << self
|
|
54
54
|
private :_graphql_lexer_index_defaults, :_graphql_lexer_index_defaults=
|
55
55
|
end
|
56
56
|
self._graphql_lexer_index_defaults = [
|
57
|
-
|
57
|
+
0, 1, 0, 0, 0, 0, 0, 9, 9, 9, 9, 9, 9, 8, 18, 8, 0, 22, 25, 25, 25, 25, 25, 30, 64, 1, 67, 68, 68, 9, 9, 9, 35, 65, 74, 77, 77, 74, 65, 8, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 25, 0 ,
|
58
58
|
]
|
59
59
|
|
60
60
|
class << self
|
@@ -62,7 +62,7 @@ class << self
|
|
62
62
|
private :_graphql_lexer_trans_cond_spaces, :_graphql_lexer_trans_cond_spaces=
|
63
63
|
end
|
64
64
|
self._graphql_lexer_trans_cond_spaces = [
|
65
|
-
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0 ,
|
65
|
+
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0 ,
|
66
66
|
]
|
67
67
|
|
68
68
|
class << self
|
@@ -70,7 +70,7 @@ class << self
|
|
70
70
|
private :_graphql_lexer_cond_targs, :_graphql_lexer_cond_targs=
|
71
71
|
end
|
72
72
|
self._graphql_lexer_cond_targs = [
|
73
|
-
|
73
|
+
23, 1, 23, 2, 3, 4, 5, 6, 23, 7, 8, 10, 9, 27, 11, 12, 29, 35, 23, 36, 13, 23, 17, 125, 18, 0, 19, 20, 21, 22, 23, 24, 23, 23, 25, 32, 23, 23, 23, 23, 33, 38, 34, 37, 23, 23, 23, 39, 23, 23, 40, 48, 55, 65, 83, 90, 93, 94, 98, 116, 121, 23, 23, 23, 23, 23, 26, 23, 23, 28, 23, 30, 31, 23, 23, 14, 15, 23, 16, 23, 41, 42, 43, 44, 45, 46, 47, 39, 49, 51, 50, 39, 52, 53, 54, 39, 56, 59, 57, 58, 39, 60, 61, 62, 63, 64, 39, 66, 74, 67, 68, 69, 70, 71, 72, 73, 39, 75, 77, 76, 39, 78, 79, 80, 81, 82, 39, 84, 85, 86, 87, 88, 89, 39, 91, 92, 39, 39, 95, 96, 97, 39, 99, 106, 100, 103, 101, 102, 39, 104, 105, 39, 107, 108, 109, 110, 111, 112, 113, 114, 115, 39, 117, 119, 118, 39, 120, 39, 122, 123, 124, 39, 0 ,
|
74
74
|
]
|
75
75
|
|
76
76
|
class << self
|
@@ -78,7 +78,7 @@ class << self
|
|
78
78
|
private :_graphql_lexer_cond_actions, :_graphql_lexer_cond_actions=
|
79
79
|
end
|
80
80
|
self._graphql_lexer_cond_actions = [
|
81
|
-
1, 0, 2, 0, 3, 0, 0, 0, 0, 0, 0, 0, 4, 0, 5, 6, 0, 7, 8, 11, 0, 12, 13, 14, 0, 15, 16, 17, 18, 0, 19,
|
81
|
+
1, 0, 2, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 4, 0, 5, 6, 0, 7, 0, 8, 0, 0, 0, 0, 0, 0, 11, 0, 12, 13, 14, 0, 15, 16, 17, 18, 0, 14, 19, 19, 20, 21, 22, 23, 24, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 27, 28, 29, 30, 31, 32, 33, 0, 34, 4, 4, 35, 36, 0, 0, 37, 0, 38, 0, 0, 0, 0, 0, 0, 0, 39, 0, 0, 0, 40, 0, 0, 0, 41, 0, 0, 0, 0, 42, 0, 0, 0, 0, 0, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 0, 0, 0, 45, 0, 0, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 47, 0, 0, 48, 49, 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, 51, 0, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 53, 0, 0, 0, 54, 0, 55, 0, 0, 0, 56, 0 ,
|
82
82
|
]
|
83
83
|
|
84
84
|
class << self
|
@@ -86,7 +86,7 @@ class << self
|
|
86
86
|
private :_graphql_lexer_to_state_actions, :_graphql_lexer_to_state_actions=
|
87
87
|
end
|
88
88
|
self._graphql_lexer_to_state_actions = [
|
89
|
-
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
89
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0 ,
|
90
90
|
]
|
91
91
|
|
92
92
|
class << self
|
@@ -94,7 +94,7 @@ class << self
|
|
94
94
|
private :_graphql_lexer_from_state_actions, :_graphql_lexer_from_state_actions=
|
95
95
|
end
|
96
96
|
self._graphql_lexer_from_state_actions = [
|
97
|
-
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
97
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0 ,
|
98
98
|
]
|
99
99
|
|
100
100
|
class << self
|
@@ -102,7 +102,7 @@ class << self
|
|
102
102
|
private :_graphql_lexer_eof_trans, :_graphql_lexer_eof_trans=
|
103
103
|
end
|
104
104
|
self._graphql_lexer_eof_trans = [
|
105
|
-
|
105
|
+
0, 1, 1, 1, 1, 1, 1, 9, 9, 9, 9, 9, 9, 9, 19, 9, 1, 0, 0, 0, 0, 0, 0, 0, 65, 66, 68, 69, 69, 69, 69, 69, 74, 66, 75, 78, 78, 75, 66, 9, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 0, 0 ,
|
106
106
|
]
|
107
107
|
|
108
108
|
class << self
|
@@ -118,7 +118,7 @@ class << self
|
|
118
118
|
private :_graphql_lexer_nfa_offsets, :_graphql_lexer_nfa_offsets=
|
119
119
|
end
|
120
120
|
self._graphql_lexer_nfa_offsets = [
|
121
|
-
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ,
|
121
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ,
|
122
122
|
]
|
123
123
|
|
124
124
|
class << self
|
@@ -140,22 +140,27 @@ self._graphql_lexer_nfa_pop_trans = [
|
|
140
140
|
class << self
|
141
141
|
attr_accessor :graphql_lexer_start
|
142
142
|
end
|
143
|
-
self.graphql_lexer_start =
|
143
|
+
self.graphql_lexer_start = 23;
|
144
144
|
|
145
145
|
class << self
|
146
146
|
attr_accessor :graphql_lexer_first_final
|
147
147
|
end
|
148
|
-
self.graphql_lexer_first_final =
|
148
|
+
self.graphql_lexer_first_final = 23;
|
149
149
|
|
150
150
|
class << self
|
151
151
|
attr_accessor :graphql_lexer_error
|
152
152
|
end
|
153
|
-
self.graphql_lexer_error =
|
153
|
+
self.graphql_lexer_error = 0;
|
154
|
+
|
155
|
+
class << self
|
156
|
+
attr_accessor :graphql_lexer_en_str
|
157
|
+
end
|
158
|
+
self.graphql_lexer_en_str = 125;
|
154
159
|
|
155
160
|
class << self
|
156
161
|
attr_accessor :graphql_lexer_en_main
|
157
162
|
end
|
158
|
-
self.graphql_lexer_en_main =
|
163
|
+
self.graphql_lexer_en_main = 23;
|
159
164
|
|
160
165
|
def self.run_lexer(query_string)
|
161
166
|
data = query_string.unpack("c*")
|
@@ -189,6 +194,10 @@ def self.run_lexer(query_string)
|
|
189
194
|
_inds = 0;
|
190
195
|
while ( _cont == 1 )
|
191
196
|
begin
|
197
|
+
if ( cs == 0 )
|
198
|
+
_cont = 0;
|
199
|
+
|
200
|
+
end
|
192
201
|
_have = 0;
|
193
202
|
if ( p == pe )
|
194
203
|
begin
|
@@ -274,7 +283,7 @@ def self.run_lexer(query_string)
|
|
274
283
|
when -2 then
|
275
284
|
begin
|
276
285
|
end
|
277
|
-
when
|
286
|
+
when 14 then
|
278
287
|
begin
|
279
288
|
begin
|
280
289
|
begin
|
@@ -285,7 +294,21 @@ def self.run_lexer(query_string)
|
|
285
294
|
end
|
286
295
|
|
287
296
|
end
|
288
|
-
when
|
297
|
+
when 8 then
|
298
|
+
begin
|
299
|
+
begin
|
300
|
+
begin
|
301
|
+
te = p+1;
|
302
|
+
begin
|
303
|
+
emit_string(ts, te, meta, block: false)
|
304
|
+
end
|
305
|
+
|
306
|
+
end
|
307
|
+
|
308
|
+
end
|
309
|
+
|
310
|
+
end
|
311
|
+
when 28 then
|
289
312
|
begin
|
290
313
|
begin
|
291
314
|
begin
|
@@ -299,7 +322,7 @@ def self.run_lexer(query_string)
|
|
299
322
|
end
|
300
323
|
|
301
324
|
end
|
302
|
-
when
|
325
|
+
when 26 then
|
303
326
|
begin
|
304
327
|
begin
|
305
328
|
begin
|
@@ -341,7 +364,7 @@ def self.run_lexer(query_string)
|
|
341
364
|
end
|
342
365
|
|
343
366
|
end
|
344
|
-
when
|
367
|
+
when 25 then
|
345
368
|
begin
|
346
369
|
begin
|
347
370
|
begin
|
@@ -355,7 +378,7 @@ def self.run_lexer(query_string)
|
|
355
378
|
end
|
356
379
|
|
357
380
|
end
|
358
|
-
when
|
381
|
+
when 24 then
|
359
382
|
begin
|
360
383
|
begin
|
361
384
|
begin
|
@@ -369,7 +392,7 @@ def self.run_lexer(query_string)
|
|
369
392
|
end
|
370
393
|
|
371
394
|
end
|
372
|
-
when
|
395
|
+
when 20 then
|
373
396
|
begin
|
374
397
|
begin
|
375
398
|
begin
|
@@ -425,7 +448,7 @@ def self.run_lexer(query_string)
|
|
425
448
|
end
|
426
449
|
|
427
450
|
end
|
428
|
-
when
|
451
|
+
when 22 then
|
429
452
|
begin
|
430
453
|
begin
|
431
454
|
begin
|
@@ -439,7 +462,7 @@ def self.run_lexer(query_string)
|
|
439
462
|
end
|
440
463
|
|
441
464
|
end
|
442
|
-
when
|
465
|
+
when 7 then
|
443
466
|
begin
|
444
467
|
begin
|
445
468
|
begin
|
@@ -453,7 +476,7 @@ def self.run_lexer(query_string)
|
|
453
476
|
end
|
454
477
|
|
455
478
|
end
|
456
|
-
when
|
479
|
+
when 21 then
|
457
480
|
begin
|
458
481
|
begin
|
459
482
|
begin
|
@@ -481,7 +504,7 @@ def self.run_lexer(query_string)
|
|
481
504
|
end
|
482
505
|
|
483
506
|
end
|
484
|
-
when
|
507
|
+
when 27 then
|
485
508
|
begin
|
486
509
|
begin
|
487
510
|
begin
|
@@ -629,7 +652,7 @@ def self.run_lexer(query_string)
|
|
629
652
|
end
|
630
653
|
|
631
654
|
end
|
632
|
-
when
|
655
|
+
when 29 then
|
633
656
|
begin
|
634
657
|
begin
|
635
658
|
begin
|
@@ -644,7 +667,7 @@ def self.run_lexer(query_string)
|
|
644
667
|
end
|
645
668
|
|
646
669
|
end
|
647
|
-
when
|
670
|
+
when 30 then
|
648
671
|
begin
|
649
672
|
begin
|
650
673
|
begin
|
@@ -673,7 +696,7 @@ def self.run_lexer(query_string)
|
|
673
696
|
end
|
674
697
|
|
675
698
|
end
|
676
|
-
when
|
699
|
+
when 1 then
|
677
700
|
begin
|
678
701
|
begin
|
679
702
|
begin
|
@@ -687,7 +710,7 @@ def self.run_lexer(query_string)
|
|
687
710
|
end
|
688
711
|
|
689
712
|
end
|
690
|
-
when
|
713
|
+
when 3 then
|
691
714
|
begin
|
692
715
|
begin
|
693
716
|
begin
|
@@ -695,7 +718,7 @@ def self.run_lexer(query_string)
|
|
695
718
|
when -2 then
|
696
719
|
begin
|
697
720
|
end
|
698
|
-
when
|
721
|
+
when 2 then
|
699
722
|
begin
|
700
723
|
p = ((te))-1;
|
701
724
|
begin
|
@@ -703,7 +726,7 @@ def self.run_lexer(query_string)
|
|
703
726
|
end
|
704
727
|
|
705
728
|
end
|
706
|
-
when
|
729
|
+
when 3 then
|
707
730
|
begin
|
708
731
|
p = ((te))-1;
|
709
732
|
begin
|
@@ -711,7 +734,7 @@ def self.run_lexer(query_string)
|
|
711
734
|
end
|
712
735
|
|
713
736
|
end
|
714
|
-
when
|
737
|
+
when 4 then
|
715
738
|
begin
|
716
739
|
p = ((te))-1;
|
717
740
|
begin
|
@@ -719,7 +742,7 @@ def self.run_lexer(query_string)
|
|
719
742
|
end
|
720
743
|
|
721
744
|
end
|
722
|
-
when
|
745
|
+
when 5 then
|
723
746
|
begin
|
724
747
|
p = ((te))-1;
|
725
748
|
begin
|
@@ -727,7 +750,7 @@ def self.run_lexer(query_string)
|
|
727
750
|
end
|
728
751
|
|
729
752
|
end
|
730
|
-
when
|
753
|
+
when 6 then
|
731
754
|
begin
|
732
755
|
p = ((te))-1;
|
733
756
|
begin
|
@@ -735,7 +758,7 @@ def self.run_lexer(query_string)
|
|
735
758
|
end
|
736
759
|
|
737
760
|
end
|
738
|
-
when
|
761
|
+
when 7 then
|
739
762
|
begin
|
740
763
|
p = ((te))-1;
|
741
764
|
begin
|
@@ -743,7 +766,7 @@ def self.run_lexer(query_string)
|
|
743
766
|
end
|
744
767
|
|
745
768
|
end
|
746
|
-
when
|
769
|
+
when 8 then
|
747
770
|
begin
|
748
771
|
p = ((te))-1;
|
749
772
|
begin
|
@@ -751,7 +774,7 @@ def self.run_lexer(query_string)
|
|
751
774
|
end
|
752
775
|
|
753
776
|
end
|
754
|
-
when
|
777
|
+
when 9 then
|
755
778
|
begin
|
756
779
|
p = ((te))-1;
|
757
780
|
begin
|
@@ -759,7 +782,7 @@ def self.run_lexer(query_string)
|
|
759
782
|
end
|
760
783
|
|
761
784
|
end
|
762
|
-
when
|
785
|
+
when 10 then
|
763
786
|
begin
|
764
787
|
p = ((te))-1;
|
765
788
|
begin
|
@@ -767,7 +790,7 @@ def self.run_lexer(query_string)
|
|
767
790
|
end
|
768
791
|
|
769
792
|
end
|
770
|
-
when
|
793
|
+
when 11 then
|
771
794
|
begin
|
772
795
|
p = ((te))-1;
|
773
796
|
begin
|
@@ -775,7 +798,7 @@ def self.run_lexer(query_string)
|
|
775
798
|
end
|
776
799
|
|
777
800
|
end
|
778
|
-
when
|
801
|
+
when 12 then
|
779
802
|
begin
|
780
803
|
p = ((te))-1;
|
781
804
|
begin
|
@@ -783,7 +806,7 @@ def self.run_lexer(query_string)
|
|
783
806
|
end
|
784
807
|
|
785
808
|
end
|
786
|
-
when
|
809
|
+
when 13 then
|
787
810
|
begin
|
788
811
|
p = ((te))-1;
|
789
812
|
begin
|
@@ -791,7 +814,7 @@ def self.run_lexer(query_string)
|
|
791
814
|
end
|
792
815
|
|
793
816
|
end
|
794
|
-
when
|
817
|
+
when 14 then
|
795
818
|
begin
|
796
819
|
p = ((te))-1;
|
797
820
|
begin
|
@@ -799,7 +822,7 @@ def self.run_lexer(query_string)
|
|
799
822
|
end
|
800
823
|
|
801
824
|
end
|
802
|
-
when
|
825
|
+
when 15 then
|
803
826
|
begin
|
804
827
|
p = ((te))-1;
|
805
828
|
begin
|
@@ -807,7 +830,7 @@ def self.run_lexer(query_string)
|
|
807
830
|
end
|
808
831
|
|
809
832
|
end
|
810
|
-
when
|
833
|
+
when 16 then
|
811
834
|
begin
|
812
835
|
p = ((te))-1;
|
813
836
|
begin
|
@@ -815,7 +838,7 @@ def self.run_lexer(query_string)
|
|
815
838
|
end
|
816
839
|
|
817
840
|
end
|
818
|
-
when
|
841
|
+
when 17 then
|
819
842
|
begin
|
820
843
|
p = ((te))-1;
|
821
844
|
begin
|
@@ -823,7 +846,7 @@ def self.run_lexer(query_string)
|
|
823
846
|
end
|
824
847
|
|
825
848
|
end
|
826
|
-
when
|
849
|
+
when 18 then
|
827
850
|
begin
|
828
851
|
p = ((te))-1;
|
829
852
|
begin
|
@@ -831,7 +854,7 @@ def self.run_lexer(query_string)
|
|
831
854
|
end
|
832
855
|
|
833
856
|
end
|
834
|
-
when
|
857
|
+
when 19 then
|
835
858
|
begin
|
836
859
|
p = ((te))-1;
|
837
860
|
begin
|
@@ -839,7 +862,7 @@ def self.run_lexer(query_string)
|
|
839
862
|
end
|
840
863
|
|
841
864
|
end
|
842
|
-
when
|
865
|
+
when 20 then
|
843
866
|
begin
|
844
867
|
p = ((te))-1;
|
845
868
|
begin
|
@@ -847,7 +870,7 @@ def self.run_lexer(query_string)
|
|
847
870
|
end
|
848
871
|
|
849
872
|
end
|
850
|
-
when
|
873
|
+
when 21 then
|
851
874
|
begin
|
852
875
|
p = ((te))-1;
|
853
876
|
begin
|
@@ -855,7 +878,7 @@ def self.run_lexer(query_string)
|
|
855
878
|
end
|
856
879
|
|
857
880
|
end
|
858
|
-
when
|
881
|
+
when 29 then
|
859
882
|
begin
|
860
883
|
p = ((te))-1;
|
861
884
|
begin
|
@@ -863,7 +886,7 @@ def self.run_lexer(query_string)
|
|
863
886
|
end
|
864
887
|
|
865
888
|
end
|
866
|
-
when
|
889
|
+
when 30 then
|
867
890
|
begin
|
868
891
|
p = ((te))-1;
|
869
892
|
begin
|
@@ -871,21 +894,13 @@ def self.run_lexer(query_string)
|
|
871
894
|
end
|
872
895
|
|
873
896
|
end
|
874
|
-
when
|
897
|
+
when 38 then
|
875
898
|
begin
|
876
899
|
p = ((te))-1;
|
877
900
|
begin
|
878
901
|
emit(:IDENTIFIER, ts, te, meta)
|
879
902
|
end
|
880
903
|
|
881
|
-
end
|
882
|
-
when 41 then
|
883
|
-
begin
|
884
|
-
p = ((te))-1;
|
885
|
-
begin
|
886
|
-
emit(:UNKNOWN_CHAR, ts, te, meta)
|
887
|
-
end
|
888
|
-
|
889
904
|
|
890
905
|
end
|
891
906
|
end
|
@@ -896,25 +911,7 @@ def self.run_lexer(query_string)
|
|
896
911
|
end
|
897
912
|
|
898
913
|
end
|
899
|
-
when
|
900
|
-
begin
|
901
|
-
begin
|
902
|
-
begin
|
903
|
-
te = p+1;
|
904
|
-
|
905
|
-
end
|
906
|
-
|
907
|
-
end
|
908
|
-
begin
|
909
|
-
begin
|
910
|
-
act = 1;
|
911
|
-
|
912
|
-
end
|
913
|
-
|
914
|
-
end
|
915
|
-
|
916
|
-
end
|
917
|
-
when 6 then
|
914
|
+
when 19 then
|
918
915
|
begin
|
919
916
|
begin
|
920
917
|
begin
|
@@ -932,7 +929,7 @@ def self.run_lexer(query_string)
|
|
932
929
|
end
|
933
930
|
|
934
931
|
end
|
935
|
-
when
|
932
|
+
when 6 then
|
936
933
|
begin
|
937
934
|
begin
|
938
935
|
begin
|
@@ -950,7 +947,7 @@ def self.run_lexer(query_string)
|
|
950
947
|
end
|
951
948
|
|
952
949
|
end
|
953
|
-
when
|
950
|
+
when 49 then
|
954
951
|
begin
|
955
952
|
begin
|
956
953
|
begin
|
@@ -968,7 +965,7 @@ def self.run_lexer(query_string)
|
|
968
965
|
end
|
969
966
|
|
970
967
|
end
|
971
|
-
when
|
968
|
+
when 43 then
|
972
969
|
begin
|
973
970
|
begin
|
974
971
|
begin
|
@@ -986,7 +983,7 @@ def self.run_lexer(query_string)
|
|
986
983
|
end
|
987
984
|
|
988
985
|
end
|
989
|
-
when
|
986
|
+
when 54 then
|
990
987
|
begin
|
991
988
|
begin
|
992
989
|
begin
|
@@ -1004,7 +1001,7 @@ def self.run_lexer(query_string)
|
|
1004
1001
|
end
|
1005
1002
|
|
1006
1003
|
end
|
1007
|
-
when
|
1004
|
+
when 42 then
|
1008
1005
|
begin
|
1009
1006
|
begin
|
1010
1007
|
begin
|
@@ -1022,7 +1019,7 @@ def self.run_lexer(query_string)
|
|
1022
1019
|
end
|
1023
1020
|
|
1024
1021
|
end
|
1025
|
-
when
|
1022
|
+
when 48 then
|
1026
1023
|
begin
|
1027
1024
|
begin
|
1028
1025
|
begin
|
@@ -1040,7 +1037,7 @@ def self.run_lexer(query_string)
|
|
1040
1037
|
end
|
1041
1038
|
|
1042
1039
|
end
|
1043
|
-
when
|
1040
|
+
when 50 then
|
1044
1041
|
begin
|
1045
1042
|
begin
|
1046
1043
|
begin
|
@@ -1058,7 +1055,7 @@ def self.run_lexer(query_string)
|
|
1058
1055
|
end
|
1059
1056
|
|
1060
1057
|
end
|
1061
|
-
when
|
1058
|
+
when 47 then
|
1062
1059
|
begin
|
1063
1060
|
begin
|
1064
1061
|
begin
|
@@ -1076,7 +1073,7 @@ def self.run_lexer(query_string)
|
|
1076
1073
|
end
|
1077
1074
|
|
1078
1075
|
end
|
1079
|
-
when
|
1076
|
+
when 53 then
|
1080
1077
|
begin
|
1081
1078
|
begin
|
1082
1079
|
begin
|
@@ -1094,7 +1091,7 @@ def self.run_lexer(query_string)
|
|
1094
1091
|
end
|
1095
1092
|
|
1096
1093
|
end
|
1097
|
-
when
|
1094
|
+
when 52 then
|
1098
1095
|
begin
|
1099
1096
|
begin
|
1100
1097
|
begin
|
@@ -1112,7 +1109,7 @@ def self.run_lexer(query_string)
|
|
1112
1109
|
end
|
1113
1110
|
|
1114
1111
|
end
|
1115
|
-
when
|
1112
|
+
when 51 then
|
1116
1113
|
begin
|
1117
1114
|
begin
|
1118
1115
|
begin
|
@@ -1130,7 +1127,7 @@ def self.run_lexer(query_string)
|
|
1130
1127
|
end
|
1131
1128
|
|
1132
1129
|
end
|
1133
|
-
when
|
1130
|
+
when 55 then
|
1134
1131
|
begin
|
1135
1132
|
begin
|
1136
1133
|
begin
|
@@ -1148,7 +1145,7 @@ def self.run_lexer(query_string)
|
|
1148
1145
|
end
|
1149
1146
|
|
1150
1147
|
end
|
1151
|
-
when
|
1148
|
+
when 41 then
|
1152
1149
|
begin
|
1153
1150
|
begin
|
1154
1151
|
begin
|
@@ -1166,7 +1163,7 @@ def self.run_lexer(query_string)
|
|
1166
1163
|
end
|
1167
1164
|
|
1168
1165
|
end
|
1169
|
-
when
|
1166
|
+
when 44 then
|
1170
1167
|
begin
|
1171
1168
|
begin
|
1172
1169
|
begin
|
@@ -1184,7 +1181,7 @@ def self.run_lexer(query_string)
|
|
1184
1181
|
end
|
1185
1182
|
|
1186
1183
|
end
|
1187
|
-
when
|
1184
|
+
when 46 then
|
1188
1185
|
begin
|
1189
1186
|
begin
|
1190
1187
|
begin
|
@@ -1202,7 +1199,7 @@ def self.run_lexer(query_string)
|
|
1202
1199
|
end
|
1203
1200
|
|
1204
1201
|
end
|
1205
|
-
when
|
1202
|
+
when 56 then
|
1206
1203
|
begin
|
1207
1204
|
begin
|
1208
1205
|
begin
|
@@ -1220,7 +1217,7 @@ def self.run_lexer(query_string)
|
|
1220
1217
|
end
|
1221
1218
|
|
1222
1219
|
end
|
1223
|
-
when
|
1220
|
+
when 40 then
|
1224
1221
|
begin
|
1225
1222
|
begin
|
1226
1223
|
begin
|
@@ -1238,7 +1235,7 @@ def self.run_lexer(query_string)
|
|
1238
1235
|
end
|
1239
1236
|
|
1240
1237
|
end
|
1241
|
-
when
|
1238
|
+
when 45 then
|
1242
1239
|
begin
|
1243
1240
|
begin
|
1244
1241
|
begin
|
@@ -1256,7 +1253,7 @@ def self.run_lexer(query_string)
|
|
1256
1253
|
end
|
1257
1254
|
|
1258
1255
|
end
|
1259
|
-
when
|
1256
|
+
when 39 then
|
1260
1257
|
begin
|
1261
1258
|
begin
|
1262
1259
|
begin
|
@@ -1267,14 +1264,14 @@ def self.run_lexer(query_string)
|
|
1267
1264
|
end
|
1268
1265
|
begin
|
1269
1266
|
begin
|
1270
|
-
act =
|
1267
|
+
act = 21;
|
1271
1268
|
|
1272
1269
|
end
|
1273
1270
|
|
1274
1271
|
end
|
1275
1272
|
|
1276
1273
|
end
|
1277
|
-
when
|
1274
|
+
when 31 then
|
1278
1275
|
begin
|
1279
1276
|
begin
|
1280
1277
|
begin
|
@@ -1292,7 +1289,7 @@ def self.run_lexer(query_string)
|
|
1292
1289
|
end
|
1293
1290
|
|
1294
1291
|
end
|
1295
|
-
when
|
1292
|
+
when 4 then
|
1296
1293
|
begin
|
1297
1294
|
begin
|
1298
1295
|
begin
|
@@ -1303,14 +1300,14 @@ def self.run_lexer(query_string)
|
|
1303
1300
|
end
|
1304
1301
|
begin
|
1305
1302
|
begin
|
1306
|
-
act =
|
1303
|
+
act = 30;
|
1307
1304
|
|
1308
1305
|
end
|
1309
1306
|
|
1310
1307
|
end
|
1311
1308
|
|
1312
1309
|
end
|
1313
|
-
when
|
1310
|
+
when 23 then
|
1314
1311
|
begin
|
1315
1312
|
begin
|
1316
1313
|
begin
|
@@ -1321,7 +1318,7 @@ def self.run_lexer(query_string)
|
|
1321
1318
|
end
|
1322
1319
|
begin
|
1323
1320
|
begin
|
1324
|
-
act =
|
1321
|
+
act = 38;
|
1325
1322
|
|
1326
1323
|
end
|
1327
1324
|
|
@@ -1347,6 +1344,10 @@ def self.run_lexer(query_string)
|
|
1347
1344
|
|
1348
1345
|
end
|
1349
1346
|
end
|
1347
|
+
if ( cs == 0 )
|
1348
|
+
_cont = 0;
|
1349
|
+
|
1350
|
+
end
|
1350
1351
|
if ( _cont == 1 )
|
1351
1352
|
p += 1;
|
1352
1353
|
|
@@ -35,11 +35,17 @@
|
|
35
35
|
RBRACKET = ']';
|
36
36
|
COLON = ':';
|
37
37
|
QUOTE = '"';
|
38
|
+
BACKSLASH = '\\';
|
39
|
+
# Could limit to hex here, but “bad unicode escape” on 0XXF is probably a
|
40
|
+
# more helpful error than “unknown char”
|
41
|
+
UNICODE_ESCAPE = '\\u' [0-9A-Za-z]{4};
|
42
|
+
# https://graphql.github.io/graphql-spec/June2018/#sec-String-Value
|
43
|
+
STRING_ESCAPE = '\\' [\\/bfnrt];
|
38
44
|
BLOCK_QUOTE = '"""';
|
39
45
|
ESCAPED_BLOCK_QUOTE = '\\"""';
|
40
46
|
BLOCK_STRING_CHAR = (ESCAPED_BLOCK_QUOTE | ^QUOTE | QUOTE{1,2} ^QUOTE);
|
41
47
|
ESCAPED_QUOTE = '\\"';
|
42
|
-
STRING_CHAR = (ESCAPED_QUOTE | ^QUOTE);
|
48
|
+
STRING_CHAR = ((ESCAPED_QUOTE | ^QUOTE) - BACKSLASH) | UNICODE_ESCAPE | STRING_ESCAPE;
|
43
49
|
VAR_SIGN = '$';
|
44
50
|
DIR_SIGN = '@';
|
45
51
|
ELLIPSIS = '...';
|
@@ -53,6 +59,11 @@
|
|
53
59
|
# catch-all for anything else. must be at the bottom for precedence.
|
54
60
|
UNKNOWN_CHAR = /./;
|
55
61
|
|
62
|
+
# Used with ragel -V for graphviz visualization
|
63
|
+
str := |*
|
64
|
+
QUOTED_STRING => { emit_string(ts, te, meta, block: false) };
|
65
|
+
*|;
|
66
|
+
|
56
67
|
main := |*
|
57
68
|
INT => { emit(:INT, ts, te, meta) };
|
58
69
|
FLOAT => { emit(:FLOAT, ts, te, meta) };
|
@@ -7,7 +7,7 @@ module GraphQL
|
|
7
7
|
# class NameCounter < GraphQL::Language::Visitor
|
8
8
|
# def initialize(document, field_name)
|
9
9
|
# super(document)
|
10
|
-
# @field_name
|
10
|
+
# @field_name = field_name
|
11
11
|
# @count = 0
|
12
12
|
# end
|
13
13
|
#
|
@@ -16,7 +16,7 @@ module GraphQL
|
|
16
16
|
# def on_field(node, parent)
|
17
17
|
# # if this field matches our search, increment the counter
|
18
18
|
# if node.name == @field_name
|
19
|
-
# @count
|
19
|
+
# @count += 1
|
20
20
|
# end
|
21
21
|
# # Continue visiting subfields:
|
22
22
|
# super
|
@@ -96,8 +96,8 @@ module GraphQL
|
|
96
96
|
else
|
97
97
|
# Run hooks if there are any
|
98
98
|
new_node = node
|
99
|
-
|
100
|
-
if
|
99
|
+
no_hooks = !@visitors.key?(node.class)
|
100
|
+
if no_hooks || begin_visit(new_node, parent)
|
101
101
|
node.children.each do |child_node|
|
102
102
|
new_child_and_node = on_node_with_modifications(child_node, new_node)
|
103
103
|
# Reassign `node` in case the child hook makes a modification
|
@@ -106,7 +106,7 @@ module GraphQL
|
|
106
106
|
end
|
107
107
|
end
|
108
108
|
end
|
109
|
-
|
109
|
+
end_visit(new_node, parent) unless no_hooks
|
110
110
|
|
111
111
|
if new_node.equal?(node)
|
112
112
|
nil
|
@@ -211,7 +211,10 @@ module GraphQL
|
|
211
211
|
|
212
212
|
# If one of the visitors returns SKIP, stop visiting this node
|
213
213
|
def self.apply_hooks(hooks, node, parent)
|
214
|
-
hooks.
|
214
|
+
hooks.each do |proc|
|
215
|
+
return false if proc.call(node, parent) == SKIP
|
216
|
+
end
|
217
|
+
true
|
215
218
|
end
|
216
219
|
|
217
220
|
# Collect `enter` and `leave` hooks for classes in {GraphQL::Language::Nodes}
|
data/lib/graphql/query.rb
CHANGED
data/lib/graphql/scalar_type.rb
CHANGED
@@ -117,8 +117,6 @@ module GraphQL
|
|
117
117
|
value.to_h
|
118
118
|
elsif value.is_a?(Array)
|
119
119
|
value.map { |element| raw_coercion_input(element) }
|
120
|
-
elsif value.is_a?(GraphQL::Language::Nodes::Enum)
|
121
|
-
value.name
|
122
120
|
else
|
123
121
|
value
|
124
122
|
end
|
@@ -126,7 +124,7 @@ module GraphQL
|
|
126
124
|
|
127
125
|
def validate_non_null_input(value, ctx)
|
128
126
|
result = Query::InputValidationResult.new
|
129
|
-
if coerce_non_null_input(value, ctx).nil?
|
127
|
+
if value.is_a?(GraphQL::Language::Nodes::Enum) || coerce_non_null_input(value, ctx).nil?
|
130
128
|
result.add_problem("Could not coerce value #{GraphQL::Language.serialize(value)} to #{name}")
|
131
129
|
end
|
132
130
|
result
|
@@ -94,7 +94,17 @@ module GraphQL
|
|
94
94
|
end
|
95
95
|
|
96
96
|
def authorized?(obj, ctx)
|
97
|
-
|
97
|
+
arg_type = type.unwrap
|
98
|
+
if arg_type.kind.input_object? && arg_type != @owner
|
99
|
+
arg_type.arguments.each do |_name, input_obj_arg|
|
100
|
+
if !input_obj_arg.authorized?(obj, ctx)
|
101
|
+
return false
|
102
|
+
end
|
103
|
+
end
|
104
|
+
true
|
105
|
+
else
|
106
|
+
true
|
107
|
+
end
|
98
108
|
end
|
99
109
|
|
100
110
|
def to_graphql
|
@@ -36,7 +36,11 @@ module GraphQL
|
|
36
36
|
# Transfer these from the top-level hash to the
|
37
37
|
# shortcutted `input:` object
|
38
38
|
self.class.extras.each do |ext|
|
39
|
-
|
39
|
+
# It's possible that the `extra` was not passed along by this point,
|
40
|
+
# don't re-add it if it wasn't given here.
|
41
|
+
if inputs.key?(ext)
|
42
|
+
input[ext] = inputs[ext]
|
43
|
+
end
|
40
44
|
end
|
41
45
|
else
|
42
46
|
input = inputs
|
@@ -0,0 +1,34 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
module GraphQL
|
3
|
+
module Types
|
4
|
+
# This scalar takes `Date`s and transmits them as strings,
|
5
|
+
# using ISO 8601 format.
|
6
|
+
#
|
7
|
+
# Use it for fields or arguments as follows:
|
8
|
+
#
|
9
|
+
# field :published_at, GraphQL::Types::ISO8601Date, null: false
|
10
|
+
#
|
11
|
+
# argument :deliver_at, GraphQL::Types::ISO8601Date, null: false
|
12
|
+
#
|
13
|
+
# Alternatively, use this built-in scalar as inspiration for your
|
14
|
+
# own Date type.
|
15
|
+
class ISO8601Date < GraphQL::Schema::Scalar
|
16
|
+
description "An ISO 8601-encoded date"
|
17
|
+
|
18
|
+
# @param value [Date]
|
19
|
+
# @return [String]
|
20
|
+
def self.coerce_result(value, _ctx)
|
21
|
+
value.iso8601
|
22
|
+
end
|
23
|
+
|
24
|
+
# @param str_value [String]
|
25
|
+
# @return [Date]
|
26
|
+
def self.coerce_input(str_value, _ctx)
|
27
|
+
Date.iso8601(str_value)
|
28
|
+
rescue ArgumentError
|
29
|
+
# Invalid input
|
30
|
+
nil
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -33,6 +33,8 @@ module GraphQL
|
|
33
33
|
# @return [String]
|
34
34
|
def self.coerce_result(value, _ctx)
|
35
35
|
value.iso8601(time_precision)
|
36
|
+
rescue ArgumentError
|
37
|
+
raise GraphQL::Error, "An incompatible object (#{value.class}) was given to #{self}. Make sure that only DateTimes are used with this type."
|
36
38
|
end
|
37
39
|
|
38
40
|
# @param str_value [String]
|
data/lib/graphql/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: graphql
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.9.
|
4
|
+
version: 1.9.13
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Robert Mosolgo
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-10-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: benchmark-ips
|
@@ -683,6 +683,7 @@ files:
|
|
683
683
|
- lib/graphql/types/float.rb
|
684
684
|
- lib/graphql/types/id.rb
|
685
685
|
- lib/graphql/types/int.rb
|
686
|
+
- lib/graphql/types/iso_8601_date.rb
|
686
687
|
- lib/graphql/types/iso_8601_date_time.rb
|
687
688
|
- lib/graphql/types/json.rb
|
688
689
|
- lib/graphql/types/relay.rb
|