Skip to content

Commit 266a070

Browse files
committed
Add start position to parse_signature
1 parent cd3559c commit 266a070

File tree

2 files changed

+5
-5
lines changed

2 files changed

+5
-5
lines changed

ext/rbs_extension/parser.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2935,12 +2935,12 @@ parse_signature_try(VALUE a) {
29352935
}
29362936

29372937
static VALUE
2938-
rbsparser_parse_signature(VALUE self, VALUE buffer, VALUE end_pos)
2938+
rbsparser_parse_signature(VALUE self, VALUE buffer, VALUE start_pos, VALUE end_pos)
29392939
{
29402940
VALUE string = rb_funcall(buffer, rb_intern("content"), 0);
29412941
StringValue(string);
2942-
lexstate *lexer = alloc_lexer(string, 0, FIX2INT(end_pos));
2943-
parserstate *parser = alloc_parser(buffer, lexer, 0, FIX2INT(end_pos), Qnil);
2942+
lexstate *lexer = alloc_lexer(string, FIX2INT(start_pos), FIX2INT(end_pos));
2943+
parserstate *parser = alloc_parser(buffer, lexer, FIX2INT(start_pos), FIX2INT(end_pos), Qnil);
29442944
return rb_ensure(parse_signature_try, (VALUE)parser, ensure_free_parser, (VALUE)parser);
29452945
}
29462946

@@ -2974,6 +2974,6 @@ void rbs__init_parser(void) {
29742974

29752975
rb_define_singleton_method(RBS_Parser, "_parse_type", rbsparser_parse_type, 5);
29762976
rb_define_singleton_method(RBS_Parser, "_parse_method_type", rbsparser_parse_method_type, 5);
2977-
rb_define_singleton_method(RBS_Parser, "_parse_signature", rbsparser_parse_signature, 2);
2977+
rb_define_singleton_method(RBS_Parser, "_parse_signature", rbsparser_parse_signature, 3);
29782978
rb_define_singleton_method(RBS_Parser, "_lex", rbsparser_lex, 2);
29792979
}

lib/rbs/parser_aux.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ def self.parse_method_type(source, range: 0..., variables: [], require_eof: fals
1717

1818
def self.parse_signature(source)
1919
buf = buffer(source)
20-
dirs, decls = _parse_signature(buf, buf.last_position)
20+
dirs, decls = _parse_signature(buf, 0, buf.last_position)
2121

2222
[buf, dirs, decls]
2323
end

0 commit comments

Comments
 (0)