Skip to content

Commit be3a312

Browse files
committed
Fix steep check offense
``` ❯ bundle exec rake steep bundle exec steep check # Type checking files: .............................................................................................................................F......................... lib/lrama/grammar/symbols/resolver.rb:201:33: [error] Cannot pass a value of type `(::Integer | nil)` as an argument of type `::Integer` │ (::Integer | nil) <: ::Integer │ nil <: ::Integer │ │ Diagnostic ID: Ruby::ArgumentTypeMismatch │ └ sym.token_id = Integer($1, 8) ~~~~~~~~~~~~~~ lib/lrama/grammar/symbols/resolver.rb:203:36: [error] Type `(::String | nil)` does not have method `bytes` │ Diagnostic ID: Ruby::NoMethod │ └ sym.token_id = $1.bytes.first ~~~~~ Detected 2 problems from 1 file ```
1 parent c499a0f commit be3a312

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

lib/lrama/grammar/symbols/resolver.rb

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -198,9 +198,17 @@ def fill_terms_number
198198
when "\\\\"
199199
sym.token_id = 92
200200
when /\A\\(\d+)\z/
201-
sym.token_id = Integer($1, 8)
201+
unless (id = Integer($1, 8)).nil?
202+
sym.token_id = id
203+
else
204+
raise "Unknown Char s_value #{sym}"
205+
end
202206
when /\A(.)\z/
203-
sym.token_id = $1.bytes.first
207+
unless (id = $1&.bytes&.first).nil?
208+
sym.token_id = id
209+
else
210+
raise "Unknown Char s_value #{sym}"
211+
end
204212
else
205213
raise "Unknown Char s_value #{sym}"
206214
end

0 commit comments

Comments
 (0)