@@ -20,13 +20,13 @@ module RBS
2020
2121 # Parse a method type and return it
2222 #
23- # When `range ` keyword is specified, it starts parsing from the `begin` to the `end` of the range.
23+ # When `byte_range ` keyword is specified, it starts parsing from the `begin` to the `end` of the range.
2424 #
2525 # ```ruby
26- # RBS::Parser.parse_method_type("() -> void") # => `() -> void`
27- # RBS::Parser.parse_method_type("() -> void", range : 0...) # => `() -> void`
28- # RBS::Parser.parse_method_type("() -> void () -> String", range : 11...) # => `() -> String`
29- # RBS::Parser.parse_method_type("() -> void () -> String", range : 23...) # => nil
26+ # RBS::Parser.parse_method_type("() -> void") # => `() -> void`
27+ # RBS::Parser.parse_method_type("() -> void", byte_range : 0...) # => `() -> void`
28+ # RBS::Parser.parse_method_type("() -> void () -> String", byte_range : 11...) # => `() -> String`
29+ # RBS::Parser.parse_method_type("() -> void () -> String", byte_range : 23...) # => nil
3030 # ```
3131 #
3232 # When `require_eof` is `true`, an error is raised if more tokens are left in the input.
@@ -39,17 +39,18 @@ module RBS
3939 # RBS::Parser.parse_method_type("", require_eof: true) # => nil
4040 # ```
4141 #
42- def self.parse_method_type : (Buffer | String, ?range: Range[Integer?], ?variables: Array[Symbol], ?require_eof: bool ) -> MethodType?
42+ def self.parse_method_type : (Buffer | String, ?byte_range: Range[Integer?], ?variables: Array[Symbol], ?require_eof: bool ) -> MethodType?
43+ | %a{deprecated: Use `byte_range:` keyword instead of `range:`} (Buffer | String, range: Range[Integer?], ?variables: Array[Symbol], ?require_eof: bool ) -> MethodType?
4344
4445 # Parse a type and return it
4546 #
46- # When `range ` keyword is specified, it starts parsing from the `begin` to the `end` of the range.
47+ # When `byte_range ` keyword is specified, it starts parsing from the `begin` to the `end` of the range.
4748 #
4849 # ```ruby
49- # RBS::Parser.parse_type("String") # => `String`
50- # RBS::Parser.parse_type("String", range : 0...) # => `String`
51- # RBS::Parser.parse_type("String Integer", pos : 7...) # => `Integer`
52- # RBS::Parser.parse_type("String Integer", pos : 14...) # => nil
50+ # RBS::Parser.parse_type("String") # => `String`
51+ # RBS::Parser.parse_type("String", byte_range : 0...) # => `String`
52+ # RBS::Parser.parse_type("String Integer", byte_range : 7...) # => `Integer`
53+ # RBS::Parser.parse_type("String Integer", byte_range : 14...) # => nil
5354 # ```
5455 #
5556 # When `require_eof` is `true`, an error is raised if more tokens are left in the input.
@@ -76,7 +77,8 @@ module RBS
7677 # RBS::Parser.parse_type("self", self_allowed: false) # => Raises an syntax error
7778 # ```
7879 #
79- def self.parse_type : (Buffer | String, ?range: Range[Integer?], ?variables: Array[Symbol], ?require_eof: bool , ?void_allowed: bool , ?self_allowed: bool , ?classish_allowed: bool ) -> Types::t?
80+ def self.parse_type : (Buffer | String, ?byte_range: Range[Integer?], ?variables: Array[Symbol], ?require_eof: bool , ?void_allowed: bool , ?self_allowed: bool , ?classish_allowed: bool ) -> Types::t?
81+ | %a{deprecated: Use `byte_range:` keyword instead of `range:`} (Buffer | String, range: Range[Integer?], ?variables: Array[Symbol], ?require_eof: bool , ?void_allowed: bool , ?self_allowed: bool , ?classish_allowed: bool ) -> Types::t?
8082
8183 # Parse whole RBS file and return an array of declarations
8284 #
@@ -130,6 +132,8 @@ module RBS
130132
131133 def self.buffer : (String | Buffer source) -> Buffer
132134
135+ def self.byte_range : (Range[Integer?] char_range, String content) -> Range[Integer?]
136+
133137 def self._parse_type : (Buffer, Integer start_pos, Integer end_pos, Array[Symbol] variables, bool require_eof, bool void_allowed, bool self_allowed, bool classish_allowed) -> Types::t?
134138
135139 def self._parse_method_type : (Buffer, Integer start_pos, Integer end_pos, Array[Symbol] variables, bool require_eof) -> MethodType?
0 commit comments