Skip to content

Commit 0961a1b

Browse files
committed
ci: enable linter
1 parent e577435 commit 0961a1b

File tree

12 files changed

+133
-28
lines changed

12 files changed

+133
-28
lines changed

.github/workflows/lint.yaml

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# Copyright 2025 Sutou Kouhei <[email protected]>
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
name: Lint
16+
on:
17+
push:
18+
branches-ignore:
19+
- "dependabot/**"
20+
pull_request:
21+
jobs:
22+
pre-commit:
23+
runs-on: ubuntu-latest
24+
steps:
25+
- uses: actions/checkout@v6
26+
- uses: ruby/setup-python@v6
27+
- uses: pre-commit/[email protected]

.pre-commit-config.yaml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# Copyright 2025 Sutou Kouhei <[email protected]>
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
repos:
16+
- repo: https://github.com/rubocop/rubocop
17+
rev: "v1.81.7"
18+
hooks:
19+
- id: rubocop
20+
args:
21+
- "--autocorrect"
22+
exclude: >-
23+
(
24+
?^lib/flatbuffers/reflection/.*\.rb$|
25+
)

.rubocop.yml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# Copyright 2025 Sutou Kouhei <[email protected]>
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
AllCops:
16+
DisabledByDefault: true
17+
18+
Lint:
19+
Enabled: false
20+
21+
Layout/LineLength:
22+
Max: 80
23+
24+
Layout/ArgumentAlignment:
25+
Enabled: true
26+
27+
Layout/SpaceAfterComma:
28+
Enabled: true

lib/flatbuffers/generator.rb

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -87,10 +87,11 @@ def generate_enums
8787
ruby_constant_name = to_constant_name(value.name)
8888
ruby_value = to_ruby_code(value.value)
8989
if enum.union?
90-
path, klass = resolve_class_name(value.union_type,
91-
value.union_type.base_type,
92-
namespaces,
93-
always_use_absolute_class_name: true)
90+
path, klass =
91+
resolve_class_name(value.union_type,
92+
value.union_type.base_type,
93+
namespaces,
94+
always_use_absolute_class_name: true)
9495
# NAME = register("Name", value, "ClassName", "path")
9596
code << "#{@indent}#{ruby_constant_name} = register(#{ruby_name}, "
9697
code << "#{ruby_value}, #{to_ruby_code(klass)}, "
@@ -190,9 +191,11 @@ def generate_objects
190191
if object.struct?
191192
code << field_offset_direct_code
192193
if enum_type?(type)
193-
code << "#{@indent}enum_value = #{unpack_method_name}(field_offset)\n"
194+
code <<
195+
"#{@indent}enum_value = #{unpack_method_name}(field_offset)\n"
194196
klass = register_requires(type, base_type, namespaces)
195-
code << "#{@indent}#{klass}.try_convert(enum_value) || enum_value"
197+
code <<
198+
"#{@indent}#{klass}.try_convert(enum_value) || enum_value"
196199
else
197200
code << "#{@indent}#{unpack_method_name}(field_offset)"
198201
end
@@ -229,7 +232,8 @@ def generate_objects
229232
field_object = @schema.objects[type.index]
230233
klass = register_requires(type, base_type, namespaces)
231234
if field_object.struct?
232-
code << "#{@indent}@view.unpack_struct(#{klass}, field_offset)\n"
235+
code <<
236+
"#{@indent}@view.unpack_struct(#{klass}, field_offset)\n"
233237
else
234238
code << "#{@indent}@view.unpack_table(#{klass}, field_offset)\n"
235239
end
@@ -263,7 +267,8 @@ def generate_objects
263267
end
264268
code << <<-CODE
265269
#{field_offset_virtual_code}
266-
#{@indent}@view.unpack_vector(field_offset, #{to_ruby_code(element_size)}) do |element_offset|
270+
#{@indent}element_size = #{to_ruby_code(element_size)}
271+
#{@indent}@view.unpack_vector(field_offset, element_size) do |element_offset|
267272
#{@indent} #{unpack_element_code}
268273
#{@indent}end
269274
CODE

lib/flatbuffers/reflection/enum.rb

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@ def attributes
1616
field_offset = @view.unpack_virtual_offset(12)
1717
return nil if field_offset.zero?
1818

19-
@view.unpack_vector(field_offset, 4) do |element_offset|
19+
element_size = 4
20+
@view.unpack_vector(field_offset, element_size) do |element_offset|
2021
@view.unpack_table(KeyValue, element_offset)
2122
end
2223
end
@@ -33,7 +34,8 @@ def documentation
3334
field_offset = @view.unpack_virtual_offset(14)
3435
return nil if field_offset.zero?
3536

36-
@view.unpack_vector(field_offset, 4) do |element_offset|
37+
element_size = 4
38+
@view.unpack_vector(field_offset, element_size) do |element_offset|
3739
@view.unpack_string(element_offset)
3840
end
3941
end
@@ -63,7 +65,8 @@ def values
6365
field_offset = @view.unpack_virtual_offset(6)
6466
return nil if field_offset.zero?
6567

66-
@view.unpack_vector(field_offset, 4) do |element_offset|
68+
element_size = 4
69+
@view.unpack_vector(field_offset, element_size) do |element_offset|
6770
@view.unpack_table(EnumVal, element_offset)
6871
end
6972
end

lib/flatbuffers/reflection/enum_val.rb

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@ def attributes
1515
field_offset = @view.unpack_virtual_offset(14)
1616
return nil if field_offset.zero?
1717

18-
@view.unpack_vector(field_offset, 4) do |element_offset|
18+
element_size = 4
19+
@view.unpack_vector(field_offset, element_size) do |element_offset|
1920
@view.unpack_table(KeyValue, element_offset)
2021
end
2122
end
@@ -24,7 +25,8 @@ def documentation
2425
field_offset = @view.unpack_virtual_offset(12)
2526
return nil if field_offset.zero?
2627

27-
@view.unpack_vector(field_offset, 4) do |element_offset|
28+
element_size = 4
29+
@view.unpack_vector(field_offset, element_size) do |element_offset|
2830
@view.unpack_string(element_offset)
2931
end
3032
end

lib/flatbuffers/reflection/field.rb

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@ def attributes
1515
field_offset = @view.unpack_virtual_offset(22)
1616
return nil if field_offset.zero?
1717

18-
@view.unpack_vector(field_offset, 4) do |element_offset|
18+
element_size = 4
19+
@view.unpack_vector(field_offset, element_size) do |element_offset|
1920
@view.unpack_table(KeyValue, element_offset)
2021
end
2122
end
@@ -45,7 +46,8 @@ def documentation
4546
field_offset = @view.unpack_virtual_offset(24)
4647
return nil if field_offset.zero?
4748

48-
@view.unpack_vector(field_offset, 4) do |element_offset|
49+
element_size = 4
50+
@view.unpack_vector(field_offset, element_size) do |element_offset|
4951
@view.unpack_string(element_offset)
5052
end
5153
end

lib/flatbuffers/reflection/object.rb

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@ def attributes
1515
field_offset = @view.unpack_virtual_offset(14)
1616
return nil if field_offset.zero?
1717

18-
@view.unpack_vector(field_offset, 4) do |element_offset|
18+
element_size = 4
19+
@view.unpack_vector(field_offset, element_size) do |element_offset|
1920
@view.unpack_table(KeyValue, element_offset)
2021
end
2122
end
@@ -39,7 +40,8 @@ def documentation
3940
field_offset = @view.unpack_virtual_offset(16)
4041
return nil if field_offset.zero?
4142

42-
@view.unpack_vector(field_offset, 4) do |element_offset|
43+
element_size = 4
44+
@view.unpack_vector(field_offset, element_size) do |element_offset|
4345
@view.unpack_string(element_offset)
4446
end
4547
end
@@ -48,7 +50,8 @@ def fields
4850
field_offset = @view.unpack_virtual_offset(6)
4951
return nil if field_offset.zero?
5052

51-
@view.unpack_vector(field_offset, 4) do |element_offset|
53+
element_size = 4
54+
@view.unpack_vector(field_offset, element_size) do |element_offset|
5255
@view.unpack_table(Field, element_offset)
5356
end
5457
end

lib/flatbuffers/reflection/rpccall.rb

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@ def attributes
1515
field_offset = @view.unpack_virtual_offset(10)
1616
return nil if field_offset.zero?
1717

18-
@view.unpack_vector(field_offset, 4) do |element_offset|
18+
element_size = 4
19+
@view.unpack_vector(field_offset, element_size) do |element_offset|
1920
@view.unpack_table(KeyValue, element_offset)
2021
end
2122
end
@@ -24,7 +25,8 @@ def documentation
2425
field_offset = @view.unpack_virtual_offset(12)
2526
return nil if field_offset.zero?
2627

27-
@view.unpack_vector(field_offset, 4) do |element_offset|
28+
element_size = 4
29+
@view.unpack_vector(field_offset, element_size) do |element_offset|
2830
@view.unpack_string(element_offset)
2931
end
3032
end

lib/flatbuffers/reflection/schema.rb

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,8 @@ def enums
2828
field_offset = @view.unpack_virtual_offset(6)
2929
return nil if field_offset.zero?
3030

31-
@view.unpack_vector(field_offset, 4) do |element_offset|
31+
element_size = 4
32+
@view.unpack_vector(field_offset, element_size) do |element_offset|
3233
@view.unpack_table(Enum, element_offset)
3334
end
3435
end
@@ -39,7 +40,8 @@ def fbs_files
3940
field_offset = @view.unpack_virtual_offset(18)
4041
return nil if field_offset.zero?
4142

42-
@view.unpack_vector(field_offset, 4) do |element_offset|
43+
element_size = 4
44+
@view.unpack_vector(field_offset, element_size) do |element_offset|
4345
@view.unpack_table(SchemaFile, element_offset)
4446
end
4547
end
@@ -62,7 +64,8 @@ def objects
6264
field_offset = @view.unpack_virtual_offset(4)
6365
return nil if field_offset.zero?
6466

65-
@view.unpack_vector(field_offset, 4) do |element_offset|
67+
element_size = 4
68+
@view.unpack_vector(field_offset, element_size) do |element_offset|
6669
@view.unpack_table(Object, element_offset)
6770
end
6871
end
@@ -78,7 +81,8 @@ def services
7881
field_offset = @view.unpack_virtual_offset(14)
7982
return nil if field_offset.zero?
8083

81-
@view.unpack_vector(field_offset, 4) do |element_offset|
84+
element_size = 4
85+
@view.unpack_vector(field_offset, element_size) do |element_offset|
8286
@view.unpack_table(Service, element_offset)
8387
end
8488
end

0 commit comments

Comments
 (0)