unibuf 0.1.1 → 0.1.2

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.
Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop_todo.yml +170 -200
  3. data/CODE_OF_CONDUCT.md +132 -0
  4. data/README.adoc +306 -114
  5. data/docs/CAPNPROTO.adoc +436 -0
  6. data/docs/FLATBUFFERS.adoc +430 -0
  7. data/docs/PROTOBUF.adoc +515 -0
  8. data/docs/TXTPROTO.adoc +369 -0
  9. data/lib/unibuf/commands/convert.rb +60 -2
  10. data/lib/unibuf/commands/schema.rb +68 -11
  11. data/lib/unibuf/errors.rb +23 -26
  12. data/lib/unibuf/models/capnproto/enum_definition.rb +72 -0
  13. data/lib/unibuf/models/capnproto/field_definition.rb +81 -0
  14. data/lib/unibuf/models/capnproto/interface_definition.rb +70 -0
  15. data/lib/unibuf/models/capnproto/method_definition.rb +81 -0
  16. data/lib/unibuf/models/capnproto/schema.rb +84 -0
  17. data/lib/unibuf/models/capnproto/struct_definition.rb +96 -0
  18. data/lib/unibuf/models/capnproto/union_definition.rb +62 -0
  19. data/lib/unibuf/models/flatbuffers/enum_definition.rb +69 -0
  20. data/lib/unibuf/models/flatbuffers/field_definition.rb +88 -0
  21. data/lib/unibuf/models/flatbuffers/schema.rb +102 -0
  22. data/lib/unibuf/models/flatbuffers/struct_definition.rb +70 -0
  23. data/lib/unibuf/models/flatbuffers/table_definition.rb +73 -0
  24. data/lib/unibuf/models/flatbuffers/union_definition.rb +60 -0
  25. data/lib/unibuf/models/message.rb +10 -0
  26. data/lib/unibuf/parsers/capnproto/binary_parser.rb +267 -0
  27. data/lib/unibuf/parsers/capnproto/grammar.rb +272 -0
  28. data/lib/unibuf/parsers/capnproto/list_reader.rb +208 -0
  29. data/lib/unibuf/parsers/capnproto/pointer_decoder.rb +163 -0
  30. data/lib/unibuf/parsers/capnproto/processor.rb +348 -0
  31. data/lib/unibuf/parsers/capnproto/segment_reader.rb +131 -0
  32. data/lib/unibuf/parsers/capnproto/struct_reader.rb +199 -0
  33. data/lib/unibuf/parsers/flatbuffers/binary_parser.rb +325 -0
  34. data/lib/unibuf/parsers/flatbuffers/grammar.rb +235 -0
  35. data/lib/unibuf/parsers/flatbuffers/processor.rb +299 -0
  36. data/lib/unibuf/serializers/binary_serializer.rb +218 -0
  37. data/lib/unibuf/serializers/capnproto/binary_serializer.rb +402 -0
  38. data/lib/unibuf/serializers/capnproto/list_writer.rb +199 -0
  39. data/lib/unibuf/serializers/capnproto/pointer_encoder.rb +118 -0
  40. data/lib/unibuf/serializers/capnproto/segment_builder.rb +124 -0
  41. data/lib/unibuf/serializers/capnproto/struct_writer.rb +139 -0
  42. data/lib/unibuf/serializers/flatbuffers/binary_serializer.rb +167 -0
  43. data/lib/unibuf/version.rb +1 -1
  44. data/lib/unibuf.rb +27 -0
  45. metadata +36 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6404bb88c786d97a72110bdc7dd051942a4c1379d2c0befc36150015bcaa3ae6
4
- data.tar.gz: e5f726931a03de7ab70c6edc4721faf17795d970fa0655c6ef04a2b778f357c5
3
+ metadata.gz: 77ffb35c5b57744dd663f127ab83c68d92c49cdbf5648695b04cf3fd4d6a8f72
4
+ data.tar.gz: 00476cb0a69e3a215e03c51412f367d5299b60d12e42a55a712da36fc838303a
5
5
  SHA512:
6
- metadata.gz: 55fc238fba00827de96158720c19b2a6052ab62c3510a530523afc05a8e5e44293672be32844c42a0e812c59a72dca2a3556ea91bd2df96458e2dddfa63363dc
7
- data.tar.gz: 7c31e3921620dd6d6301b3a4cd8fcc696d06258958a1eb56e01bd1687c3a435a2c0ccf50b0825bcd31bd155ee42d047ea7511baa8465650c0f4ace1d8cd2c2ea
6
+ metadata.gz: 89e485b4efa2939af0c7236a08c0189402a2d1c7e2a12f89dc345463d74d06730db63a13d39027e3a94e92a1bf15d305ed6b9057d21063c3e500b36d46178517
7
+ data.tar.gz: 6b3c3014b44a298cca65733d778b0f07bacbbfc9d17fa36201245eb015fc591003e956963488f9b39ca5a73fc20e4ffcc2b8205bb47ed2476c821575494bd0af
data/.rubocop_todo.yml CHANGED
@@ -1,78 +1,74 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config`
3
- # on 2025-11-19 09:41:01 UTC using RuboCop version 1.81.7.
3
+ # on 2025-11-19 16:03:19 UTC using RuboCop version 1.81.7.
4
4
  # The point is for the user to remove these configuration records
5
5
  # one by one as the offenses are removed from the code base.
6
6
  # Note that changes in the inspected code, or installation of new
7
7
  # versions of RuboCop, may require this file to be generated again.
8
8
 
9
- # Offense count: 15
9
+ # Offense count: 110
10
10
  # This cop supports safe autocorrection (--autocorrect).
11
11
  # Configuration parameters: EnforcedStyle, IndentationWidth.
12
12
  # SupportedStyles: with_first_argument, with_fixed_indentation
13
13
  Layout/ArgumentAlignment:
14
14
  Exclude:
15
- - 'lib/unibuf/models/values/scalar_value.rb'
16
- - 'lib/unibuf/parsers/binary/wire_format_parser.rb'
17
- - 'lib/unibuf/validators/type_validator.rb'
18
- - 'spec/unibuf/models/enum_definition_spec.rb'
19
- - 'spec/unibuf/models/field_definition_spec.rb'
20
- - 'spec/unibuf/models/schema_spec.rb'
15
+ - 'spec/unibuf/models/capnproto/field_definition_spec.rb'
16
+ - 'spec/unibuf/models/capnproto/interface_definition_spec.rb'
17
+ - 'spec/unibuf/models/capnproto/struct_definition_spec.rb'
18
+ - 'spec/unibuf/parsers/capnproto/additional_coverage_spec.rb'
19
+ - 'spec/unibuf/parsers/capnproto/comprehensive_spec.rb'
20
+ - 'spec/unibuf/parsers/capnproto/error_handling_spec.rb'
21
21
 
22
- # Offense count: 3
22
+ # Offense count: 5
23
23
  # This cop supports safe autocorrection (--autocorrect).
24
24
  # Configuration parameters: EnforcedStyle, IndentationWidth.
25
25
  # SupportedStyles: with_first_element, with_fixed_indentation
26
26
  Layout/ArrayAlignment:
27
27
  Exclude:
28
- - 'lib/unibuf/validators/type_validator.rb'
29
- - 'spec/unibuf/models/values/list_value_spec.rb'
28
+ - 'spec/unibuf/models/capnproto/field_definition_spec.rb'
29
+ - 'spec/unibuf/parsers/capnproto/comprehensive_spec.rb'
30
+ - 'spec/unibuf/parsers/capnproto/error_handling_spec.rb'
30
31
 
31
- # Offense count: 21
32
+ # Offense count: 33
32
33
  # This cop supports safe autocorrection (--autocorrect).
33
34
  # Configuration parameters: EnforcedStyleAlignWith.
34
35
  # SupportedStylesAlignWith: either, start_of_block, start_of_line
35
36
  Layout/BlockAlignment:
36
37
  Exclude:
37
38
  - 'lib/unibuf/models/values/scalar_value.rb'
38
- - 'spec/unibuf/models/enum_definition_spec.rb'
39
- - 'spec/unibuf/models/field_definition_spec.rb'
40
- - 'spec/unibuf/models/schema_spec.rb'
41
- - 'spec/unibuf/parsers/proto3/parser_spec.rb'
42
- - 'spec/unibuf/validators/type_validator_spec.rb'
43
-
44
- # Offense count: 20
39
+ - 'spec/unibuf/models/capnproto/enum_definition_spec.rb'
40
+ - 'spec/unibuf/models/capnproto/field_definition_spec.rb'
41
+ - 'spec/unibuf/models/capnproto/interface_definition_spec.rb'
42
+ - 'spec/unibuf/models/capnproto/schema_spec.rb'
43
+ - 'spec/unibuf/models/capnproto/struct_definition_spec.rb'
44
+ - 'spec/unibuf/parsers/capnproto/additional_coverage_spec.rb'
45
+ - 'spec/unibuf/parsers/capnproto/comprehensive_spec.rb'
46
+ - 'spec/unibuf/parsers/capnproto/error_handling_spec.rb'
47
+
48
+ # Offense count: 32
45
49
  # This cop supports safe autocorrection (--autocorrect).
46
50
  Layout/BlockEndNewline:
47
51
  Exclude:
48
- - 'spec/unibuf/models/enum_definition_spec.rb'
49
- - 'spec/unibuf/models/field_definition_spec.rb'
50
- - 'spec/unibuf/models/schema_spec.rb'
51
- - 'spec/unibuf/parsers/proto3/parser_spec.rb'
52
- - 'spec/unibuf/validators/type_validator_spec.rb'
52
+ - 'spec/unibuf/models/capnproto/enum_definition_spec.rb'
53
+ - 'spec/unibuf/models/capnproto/field_definition_spec.rb'
54
+ - 'spec/unibuf/models/capnproto/interface_definition_spec.rb'
55
+ - 'spec/unibuf/models/capnproto/schema_spec.rb'
56
+ - 'spec/unibuf/models/capnproto/struct_definition_spec.rb'
57
+ - 'spec/unibuf/parsers/capnproto/additional_coverage_spec.rb'
58
+ - 'spec/unibuf/parsers/capnproto/comprehensive_spec.rb'
59
+ - 'spec/unibuf/parsers/capnproto/error_handling_spec.rb'
53
60
 
54
- # Offense count: 1
55
- # This cop supports safe autocorrection (--autocorrect).
56
- Layout/EmptyLineAfterGuardClause:
57
- Exclude:
58
- - 'lib/unibuf/parsers/binary/wire_format_parser.rb'
59
-
60
- # Offense count: 1
61
+ # Offense count: 6
61
62
  # This cop supports safe autocorrection (--autocorrect).
62
63
  # Configuration parameters: AllowForAlignment, AllowBeforeTrailingComments, ForceEqualSignAlignment.
63
64
  Layout/ExtraSpacing:
64
65
  Exclude:
65
66
  - 'spec/spec_helper.rb'
67
+ - 'spec/unibuf/models/capnproto/interface_definition_spec.rb'
68
+ - 'spec/unibuf/parsers/capnproto/comprehensive_spec.rb'
69
+ - 'spec/unibuf/parsers/capnproto/error_handling_spec.rb'
66
70
 
67
- # Offense count: 2
68
- # This cop supports safe autocorrection (--autocorrect).
69
- # Configuration parameters: EnforcedStyle, IndentationWidth.
70
- # SupportedStyles: special_inside_parentheses, consistent, align_brackets
71
- Layout/FirstArrayElementIndentation:
72
- Exclude:
73
- - 'spec/unibuf/models/values/list_value_spec.rb'
74
-
75
- # Offense count: 4
71
+ # Offense count: 90
76
72
  # This cop supports safe autocorrection (--autocorrect).
77
73
  # Configuration parameters: AllowMultipleStyles, EnforcedHashRocketStyle, EnforcedColonStyle, EnforcedLastArgumentHashStyle.
78
74
  # SupportedHashRocketStyles: key, separator, table
@@ -80,67 +76,77 @@ Layout/FirstArrayElementIndentation:
80
76
  # SupportedLastArgumentHashStyles: always_inspect, always_ignore, ignore_implicit, ignore_explicit
81
77
  Layout/HashAlignment:
82
78
  Exclude:
83
- - 'spec/unibuf/models/schema_spec.rb'
84
- - 'spec/unibuf/models/values/message_value_spec.rb'
79
+ - 'spec/unibuf/models/capnproto/interface_definition_spec.rb'
80
+ - 'spec/unibuf/parsers/capnproto/additional_coverage_spec.rb'
81
+ - 'spec/unibuf/parsers/capnproto/comprehensive_spec.rb'
82
+ - 'spec/unibuf/parsers/capnproto/error_handling_spec.rb'
83
+ - 'spec/unibuf/parsers/capnproto/processor_spec.rb'
85
84
 
86
- # Offense count: 40
85
+ # Offense count: 64
87
86
  # This cop supports safe autocorrection (--autocorrect).
88
87
  # Configuration parameters: Width, AllowedPatterns.
89
88
  Layout/IndentationWidth:
90
89
  Exclude:
91
- - 'spec/unibuf/models/enum_definition_spec.rb'
92
- - 'spec/unibuf/models/field_definition_spec.rb'
93
- - 'spec/unibuf/models/schema_spec.rb'
94
- - 'spec/unibuf/parsers/proto3/parser_spec.rb'
95
- - 'spec/unibuf/validators/type_validator_spec.rb'
90
+ - 'spec/unibuf/models/capnproto/enum_definition_spec.rb'
91
+ - 'spec/unibuf/models/capnproto/field_definition_spec.rb'
92
+ - 'spec/unibuf/models/capnproto/interface_definition_spec.rb'
93
+ - 'spec/unibuf/models/capnproto/schema_spec.rb'
94
+ - 'spec/unibuf/models/capnproto/struct_definition_spec.rb'
95
+ - 'spec/unibuf/parsers/capnproto/additional_coverage_spec.rb'
96
+ - 'spec/unibuf/parsers/capnproto/comprehensive_spec.rb'
97
+ - 'spec/unibuf/parsers/capnproto/error_handling_spec.rb'
96
98
 
97
- # Offense count: 68
99
+ # Offense count: 229
98
100
  # This cop supports safe autocorrection (--autocorrect).
99
101
  # Configuration parameters: Max, AllowHeredoc, AllowURI, AllowQualifiedName, URISchemes, IgnoreCopDirectives, AllowedPatterns, SplitStrings.
100
102
  # URISchemes: http, https
101
103
  Layout/LineLength:
102
104
  Enabled: false
103
105
 
104
- # Offense count: 11
106
+ # Offense count: 3
107
+ # This cop supports safe autocorrection (--autocorrect).
108
+ # Configuration parameters: EnforcedStyle, IndentationWidth.
109
+ # SupportedStyles: aligned, indented
110
+ Layout/MultilineOperationIndentation:
111
+ Exclude:
112
+ - 'spec/unibuf/parsers/capnproto/error_handling_spec.rb'
113
+
114
+ # Offense count: 9
105
115
  # This cop supports safe autocorrection (--autocorrect).
106
116
  # Configuration parameters: EnforcedStyle.
107
117
  # SupportedStyles: final_newline, final_blank_line
108
118
  Layout/TrailingEmptyLines:
109
119
  Exclude:
110
- - 'spec/unibuf/models/enum_definition_spec.rb'
111
- - 'spec/unibuf/models/field_definition_spec.rb'
112
- - 'spec/unibuf/models/schema_spec.rb'
113
- - 'spec/unibuf/models/values/list_value_spec.rb'
114
- - 'spec/unibuf/models/values/map_value_spec.rb'
115
- - 'spec/unibuf/models/values/message_value_spec.rb'
116
- - 'spec/unibuf/models/values/scalar_value_spec.rb'
117
- - 'spec/unibuf/parsers/binary/wire_format_parser_spec.rb'
118
- - 'spec/unibuf/parsers/proto3/parser_spec.rb'
119
- - 'spec/unibuf/validators/schema_validator_spec.rb'
120
- - 'spec/unibuf/validators/type_validator_spec.rb'
121
-
122
- # Offense count: 15
120
+ - 'spec/unibuf/models/capnproto/enum_definition_spec.rb'
121
+ - 'spec/unibuf/models/capnproto/field_definition_spec.rb'
122
+ - 'spec/unibuf/models/capnproto/interface_definition_spec.rb'
123
+ - 'spec/unibuf/models/capnproto/schema_spec.rb'
124
+ - 'spec/unibuf/models/capnproto/struct_definition_spec.rb'
125
+ - 'spec/unibuf/parsers/capnproto/additional_coverage_spec.rb'
126
+ - 'spec/unibuf/parsers/capnproto/comprehensive_spec.rb'
127
+ - 'spec/unibuf/parsers/capnproto/error_handling_spec.rb'
128
+ - 'spec/unibuf/parsers/capnproto/processor_spec.rb'
129
+
130
+ # Offense count: 65
123
131
  # This cop supports safe autocorrection (--autocorrect).
124
132
  # Configuration parameters: AllowInHeredoc.
125
133
  Layout/TrailingWhitespace:
126
134
  Exclude:
127
- - 'lib/unibuf/models/values/scalar_value.rb'
128
- - 'lib/unibuf/parsers/binary/wire_format_parser.rb'
129
- - 'lib/unibuf/validators/type_validator.rb'
130
- - 'spec/unibuf/models/enum_definition_spec.rb'
131
- - 'spec/unibuf/models/field_definition_spec.rb'
132
- - 'spec/unibuf/models/schema_spec.rb'
133
- - 'spec/unibuf/models/values/message_value_spec.rb'
135
+ - 'spec/unibuf/models/capnproto/field_definition_spec.rb'
136
+ - 'spec/unibuf/models/capnproto/interface_definition_spec.rb'
137
+ - 'spec/unibuf/models/capnproto/struct_definition_spec.rb'
138
+ - 'spec/unibuf/parsers/capnproto/additional_coverage_spec.rb'
139
+ - 'spec/unibuf/parsers/capnproto/comprehensive_spec.rb'
140
+ - 'spec/unibuf/parsers/capnproto/error_handling_spec.rb'
141
+ - 'spec/unibuf/parsers/capnproto/processor_spec.rb'
134
142
 
135
- # Offense count: 8
143
+ # Offense count: 6
136
144
  # This cop supports safe autocorrection (--autocorrect).
137
145
  Lint/AmbiguousOperatorPrecedence:
138
146
  Exclude:
139
- - 'lib/unibuf/validators/type_validator.rb'
140
- - 'spec/unibuf/models/field_definition_spec.rb'
141
- - 'spec/unibuf/validators/type_validator_spec.rb'
147
+ - 'spec/unibuf/parsers/capnproto/error_handling_spec.rb'
142
148
 
143
- # Offense count: 11
149
+ # Offense count: 21
144
150
  # Configuration parameters: IgnoreLiteralBranches, IgnoreConstantBranches, IgnoreDuplicateElseBranch.
145
151
  Lint/DuplicateBranch:
146
152
  Exclude:
@@ -151,6 +157,16 @@ Lint/DuplicateBranch:
151
157
  - 'lib/unibuf/models/values/map_value.rb'
152
158
  - 'lib/unibuf/models/values/scalar_value.rb'
153
159
  - 'lib/unibuf/parsers/binary/wire_format_parser.rb'
160
+ - 'lib/unibuf/parsers/capnproto/binary_parser.rb'
161
+ - 'lib/unibuf/parsers/flatbuffers/binary_parser.rb'
162
+ - 'lib/unibuf/serializers/binary_serializer.rb'
163
+ - 'lib/unibuf/serializers/capnproto/binary_serializer.rb'
164
+ - 'lib/unibuf/serializers/flatbuffers/binary_serializer.rb'
165
+
166
+ # Offense count: 1
167
+ Lint/DuplicateMethods:
168
+ Exclude:
169
+ - 'lib/unibuf/serializers/capnproto/segment_builder.rb'
154
170
 
155
171
  # Offense count: 1
156
172
  # Configuration parameters: AllowedPatterns.
@@ -167,89 +183,64 @@ Lint/UnusedMethodArgument:
167
183
  Exclude:
168
184
  - 'lib/unibuf/models/values/scalar_value.rb'
169
185
 
170
- # Offense count: 19
186
+ # Offense count: 62
171
187
  # Configuration parameters: AllowedMethods, AllowedPatterns, CountRepeatedAttributes, Max.
172
188
  Metrics/AbcSize:
173
- Exclude:
174
- - 'lib/unibuf/commands/convert.rb'
175
- - 'lib/unibuf/commands/parse.rb'
176
- - 'lib/unibuf/commands/schema.rb'
177
- - 'lib/unibuf/commands/validate.rb'
178
- - 'lib/unibuf/models/field.rb'
179
- - 'lib/unibuf/models/field_definition.rb'
180
- - 'lib/unibuf/models/message_definition.rb'
181
- - 'lib/unibuf/models/schema.rb'
182
- - 'lib/unibuf/models/values/scalar_value.rb'
183
- - 'lib/unibuf/parsers/proto3/processor.rb'
184
- - 'lib/unibuf/parsers/textproto/parser.rb'
185
- - 'lib/unibuf/parsers/textproto/processor.rb'
186
- - 'lib/unibuf/validators/schema_validator.rb'
187
- - 'lib/unibuf/validators/type_validator.rb'
189
+ Enabled: false
190
+
191
+ # Offense count: 1
192
+ # Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns, inherit_mode.
193
+ # AllowedMethods: refine
194
+ Metrics/BlockLength:
195
+ Max: 58
188
196
 
189
- # Offense count: 13
197
+ # Offense count: 1
198
+ # Configuration parameters: CountBlocks, CountModifierForms.
199
+ Metrics/BlockNesting:
200
+ Max: 4
201
+
202
+ # Offense count: 38
190
203
  # Configuration parameters: AllowedMethods, AllowedPatterns, Max.
191
204
  Metrics/CyclomaticComplexity:
192
- Exclude:
193
- - 'lib/unibuf.rb'
194
- - 'lib/unibuf/commands/validate.rb'
195
- - 'lib/unibuf/models/field_definition.rb'
196
- - 'lib/unibuf/models/message_definition.rb'
197
- - 'lib/unibuf/models/schema.rb'
198
- - 'lib/unibuf/models/values/base_value.rb'
199
- - 'lib/unibuf/models/values/scalar_value.rb'
200
- - 'lib/unibuf/parsers/proto3/processor.rb'
201
- - 'lib/unibuf/parsers/textproto/processor.rb'
202
- - 'lib/unibuf/validators/schema_validator.rb'
205
+ Enabled: false
203
206
 
204
- # Offense count: 45
207
+ # Offense count: 121
205
208
  # Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns.
206
209
  Metrics/MethodLength:
207
- Max: 24
210
+ Max: 102
208
211
 
209
- # Offense count: 5
212
+ # Offense count: 19
210
213
  # Configuration parameters: AllowedMethods, AllowedPatterns, Max.
211
214
  Metrics/PerceivedComplexity:
212
- Exclude:
213
- - 'lib/unibuf/models/field_definition.rb'
214
- - 'lib/unibuf/models/values/scalar_value.rb'
215
- - 'lib/unibuf/parsers/proto3/processor.rb'
216
- - 'lib/unibuf/parsers/textproto/processor.rb'
215
+ Enabled: false
217
216
 
218
- # Offense count: 11
217
+ # Offense count: 26
219
218
  # Configuration parameters: Mode, AllowedMethods, AllowedPatterns, AllowBangMethods, WaywardPredicates.
220
219
  # AllowedMethods: call
221
220
  # WaywardPredicates: nonzero?
222
221
  Naming/PredicateMethod:
223
- Exclude:
224
- - 'lib/unibuf/models/enum_definition.rb'
225
- - 'lib/unibuf/models/field_definition.rb'
226
- - 'lib/unibuf/models/message.rb'
227
- - 'lib/unibuf/models/message_definition.rb'
228
- - 'lib/unibuf/models/schema.rb'
229
- - 'lib/unibuf/models/values/base_value.rb'
230
- - 'lib/unibuf/models/values/list_value.rb'
231
- - 'lib/unibuf/models/values/map_value.rb'
232
- - 'lib/unibuf/models/values/message_value.rb'
233
- - 'lib/unibuf/models/values/scalar_value.rb'
234
- - 'lib/unibuf/validators/type_validator.rb'
222
+ Enabled: false
235
223
 
236
- # Offense count: 7
224
+ # Offense count: 19
237
225
  # Configuration parameters: EnforcedStyle, CheckMethodNames, CheckSymbols, AllowedIdentifiers, AllowedPatterns.
238
226
  # SupportedStyles: snake_case, normalcase, non_integer
239
227
  # AllowedIdentifiers: TLS1_1, TLS1_2, capture3, iso8601, rfc1123_date, rfc822, rfc2822, rfc3339, x86_64
240
228
  Naming/VariableNumber:
241
229
  Exclude:
242
230
  - 'lib/unibuf/parsers/binary/wire_format_parser.rb'
231
+ - 'lib/unibuf/serializers/binary_serializer.rb'
243
232
  - 'spec/unibuf/parsers/binary/wire_format_parser_spec.rb'
233
+ - 'spec/unibuf/serializers/binary_serializer_spec.rb'
244
234
 
245
- # Offense count: 1
235
+ # Offense count: 7
246
236
  # Configuration parameters: Prefixes, AllowedPatterns.
247
237
  # Prefixes: when, with, without
248
238
  RSpec/ContextWording:
249
239
  Exclude:
250
240
  - 'spec/unibuf/parsers/textproto/integration_spec.rb'
241
+ - 'spec/unibuf/serializers/binary_serializer_spec.rb'
251
242
 
252
- # Offense count: 2
243
+ # Offense count: 10
253
244
  # Configuration parameters: IgnoredMetadata.
254
245
  RSpec/DescribeClass:
255
246
  Exclude:
@@ -258,33 +249,51 @@ RSpec/DescribeClass:
258
249
  - '**/spec/routing/**/*'
259
250
  - '**/spec/system/**/*'
260
251
  - '**/spec/views/**/*'
252
+ - 'spec/unibuf/parsers/capnproto/additional_coverage_spec.rb'
253
+ - 'spec/unibuf/parsers/capnproto/binary_parser_spec.rb'
254
+ - 'spec/unibuf/parsers/capnproto/comprehensive_spec.rb'
255
+ - 'spec/unibuf/parsers/capnproto/error_handling_spec.rb'
256
+ - 'spec/unibuf/parsers/capnproto/integration_spec.rb'
261
257
  - 'spec/unibuf/parsers/proto3/parser_spec.rb'
262
258
  - 'spec/unibuf/parsers/textproto/integration_spec.rb'
259
+ - 'spec/unibuf/serializers/binary_integration_spec.rb'
260
+ - 'spec/unibuf/serializers/capnproto/binary_serializer_spec.rb'
261
+ - 'spec/unibuf/serializers/flatbuffers/binary_serializer_debug_spec.rb'
263
262
 
264
- # Offense count: 93
263
+ # Offense count: 230
265
264
  # Configuration parameters: CountAsOne.
266
265
  RSpec/ExampleLength:
267
- Max: 36
266
+ Max: 50
268
267
 
269
- # Offense count: 6
268
+ # Offense count: 14
270
269
  # Configuration parameters: Max, AllowedIdentifiers, AllowedPatterns.
271
270
  RSpec/IndexedLet:
272
271
  Exclude:
272
+ - 'spec/unibuf/models/capnproto/interface_definition_spec.rb'
273
+ - 'spec/unibuf/models/capnproto/schema_spec.rb'
274
+ - 'spec/unibuf/models/capnproto/struct_definition_spec.rb'
273
275
  - 'spec/unibuf/models/message_definition_spec.rb'
274
276
  - 'spec/unibuf/models/schema_spec.rb'
277
+ - 'spec/unibuf/parsers/capnproto/comprehensive_spec.rb'
275
278
  - 'spec/unibuf/validators/schema_validator_spec.rb'
276
279
 
277
- # Offense count: 117
280
+ # Offense count: 1
281
+ RSpec/MultipleDescribes:
282
+ Exclude:
283
+ - 'spec/unibuf/models/capnproto/interface_definition_spec.rb'
284
+
285
+ # Offense count: 235
278
286
  RSpec/MultipleExpectations:
279
287
  Max: 8
280
288
 
281
289
  # Offense count: 1
282
- # This cop supports unsafe autocorrection (--autocorrect-all).
283
- Style/BitwisePredicate:
290
+ # Configuration parameters: AllowedPatterns.
291
+ # AllowedPatterns: ^expect_, ^assert_
292
+ RSpec/NoExpectationExample:
284
293
  Exclude:
285
- - 'lib/unibuf/parsers/binary/wire_format_parser.rb'
294
+ - 'spec/unibuf/serializers/flatbuffers/binary_serializer_debug_spec.rb'
286
295
 
287
- # Offense count: 48
296
+ # Offense count: 56
288
297
  # This cop supports safe autocorrection (--autocorrect).
289
298
  # Configuration parameters: EnforcedStyle, ProceduralMethods, FunctionalMethods, AllowedMethods, AllowedPatterns, AllowBracesOnProceduralOneLiners, BracesRequiredMethods.
290
299
  # SupportedStyles: line_count_based, semantic, braces_for_chaining, always_braces
@@ -293,84 +302,45 @@ Style/BitwisePredicate:
293
302
  # AllowedMethods: lambda, proc, it
294
303
  Style/BlockDelimiters:
295
304
  Exclude:
296
- - 'spec/unibuf/models/enum_definition_spec.rb'
297
- - 'spec/unibuf/models/field_definition_spec.rb'
298
- - 'spec/unibuf/models/schema_spec.rb'
299
- - 'spec/unibuf/models/values/map_value_spec.rb'
300
- - 'spec/unibuf/models/values/message_value_spec.rb'
301
- - 'spec/unibuf/parsers/binary/wire_format_parser_spec.rb'
302
- - 'spec/unibuf/parsers/proto3/parser_spec.rb'
303
- - 'spec/unibuf/validators/schema_validator_spec.rb'
304
- - 'spec/unibuf/validators/type_validator_spec.rb'
305
-
306
- # Offense count: 1
307
- # This cop supports unsafe autocorrection (--autocorrect-all).
308
- Style/ComparableBetween:
309
- Exclude:
310
- - 'lib/unibuf/validators/type_validator.rb'
305
+ - 'spec/unibuf/models/capnproto/enum_definition_spec.rb'
306
+ - 'spec/unibuf/models/capnproto/field_definition_spec.rb'
307
+ - 'spec/unibuf/models/capnproto/interface_definition_spec.rb'
308
+ - 'spec/unibuf/models/capnproto/schema_spec.rb'
309
+ - 'spec/unibuf/models/capnproto/struct_definition_spec.rb'
310
+ - 'spec/unibuf/parsers/capnproto/additional_coverage_spec.rb'
311
+ - 'spec/unibuf/parsers/capnproto/comprehensive_spec.rb'
312
+ - 'spec/unibuf/parsers/capnproto/error_handling_spec.rb'
311
313
 
312
314
  # Offense count: 1
313
- # This cop supports unsafe autocorrection (--autocorrect-all).
314
- Style/MapIntoArray:
315
- Exclude:
316
- - 'spec/unibuf/models/values/list_value_spec.rb'
317
-
318
- # Offense count: 11
319
315
  # This cop supports safe autocorrection (--autocorrect).
320
- Style/MultilineIfModifier:
321
- Exclude:
322
- - 'lib/unibuf/parsers/binary/wire_format_parser.rb'
323
- - 'lib/unibuf/validators/type_validator.rb'
324
-
325
- # Offense count: 1
326
- # This cop supports unsafe autocorrection (--autocorrect-all).
327
- # Configuration parameters: EnforcedStyle, AllowedMethods, AllowedPatterns.
328
- # SupportedStyles: predicate, comparison
329
- Style/NumericPredicate:
330
- Exclude:
331
- - 'spec/**/*'
332
- - 'lib/unibuf/models/values/scalar_value.rb'
333
-
334
- # Offense count: 1
335
- # This cop supports unsafe autocorrection (--autocorrect-all).
336
- # Configuration parameters: AllowMethodsWithArguments, AllowedMethods, AllowedPatterns, AllowComments.
337
- # AllowedMethods: define_method
338
- Style/SymbolProc:
316
+ # Configuration parameters: EnforcedStyle, AllowComments.
317
+ # SupportedStyles: empty, nil, both
318
+ Style/EmptyElse:
339
319
  Exclude:
340
- - 'spec/unibuf/models/values/list_value_spec.rb'
320
+ - 'lib/unibuf/serializers/capnproto/binary_serializer.rb'
341
321
 
342
- # Offense count: 62
322
+ # Offense count: 72
343
323
  # This cop supports safe autocorrection (--autocorrect).
344
324
  # Configuration parameters: EnforcedStyleForMultiline.
345
325
  # SupportedStylesForMultiline: comma, consistent_comma, diff_comma, no_comma
346
326
  Style/TrailingCommaInArguments:
347
327
  Exclude:
348
- - 'spec/unibuf/models/enum_definition_spec.rb'
349
- - 'spec/unibuf/models/field_definition_spec.rb'
350
- - 'spec/unibuf/models/schema_spec.rb'
351
- - 'spec/unibuf/parsers/binary/wire_format_parser_spec.rb'
352
- - 'spec/unibuf/validators/schema_validator_spec.rb'
353
- - 'spec/unibuf/validators/type_validator_spec.rb'
328
+ - 'spec/unibuf/models/capnproto/enum_definition_spec.rb'
329
+ - 'spec/unibuf/models/capnproto/field_definition_spec.rb'
330
+ - 'spec/unibuf/models/capnproto/interface_definition_spec.rb'
331
+ - 'spec/unibuf/models/capnproto/schema_spec.rb'
332
+ - 'spec/unibuf/models/capnproto/struct_definition_spec.rb'
333
+ - 'spec/unibuf/parsers/capnproto/additional_coverage_spec.rb'
334
+ - 'spec/unibuf/parsers/capnproto/comprehensive_spec.rb'
335
+ - 'spec/unibuf/parsers/capnproto/error_handling_spec.rb'
354
336
 
355
- # Offense count: 16
337
+ # Offense count: 26
356
338
  # This cop supports safe autocorrection (--autocorrect).
357
339
  # Configuration parameters: EnforcedStyleForMultiline.
358
340
  # SupportedStylesForMultiline: comma, consistent_comma, diff_comma, no_comma
359
341
  Style/TrailingCommaInArrayLiteral:
360
342
  Exclude:
361
- - 'spec/unibuf/models/values/list_value_spec.rb'
362
- - 'spec/unibuf/models/values/message_value_spec.rb'
363
- - 'spec/unibuf/validators/schema_validator_spec.rb'
364
- - 'spec/unibuf/validators/type_validator_spec.rb'
365
-
366
- # Offense count: 9
367
- # This cop supports safe autocorrection (--autocorrect).
368
- # Configuration parameters: EnforcedStyleForMultiline.
369
- # SupportedStylesForMultiline: comma, consistent_comma, diff_comma, no_comma
370
- Style/TrailingCommaInHashLiteral:
371
- Exclude:
372
- - 'lib/unibuf/parsers/binary/wire_format_parser.rb'
373
- - 'lib/unibuf/validators/type_validator.rb'
374
- - 'spec/unibuf/models/values/message_value_spec.rb'
375
- - 'spec/unibuf/validators/schema_validator_spec.rb'
376
- - 'spec/unibuf/validators/type_validator_spec.rb'
343
+ - 'spec/unibuf/models/capnproto/schema_spec.rb'
344
+ - 'spec/unibuf/parsers/capnproto/additional_coverage_spec.rb'
345
+ - 'spec/unibuf/parsers/capnproto/comprehensive_spec.rb'
346
+ - 'spec/unibuf/parsers/capnproto/error_handling_spec.rb'