@@ -12,10 +12,13 @@ class LanguageId < T::Enum
12
12
13
13
extend T ::Sig
14
14
extend T ::Helpers
15
+ extend T ::Generic
16
+
17
+ ParseResultType = type_member
15
18
16
19
abstract!
17
20
18
- sig { returns ( Prism :: ParseResult ) }
21
+ sig { returns ( ParseResultType ) }
19
22
attr_reader :parse_result
20
23
21
24
sig { returns ( String ) }
@@ -38,10 +41,10 @@ def initialize(source:, version:, uri:, encoding: Encoding::UTF_8)
38
41
@version = T . let ( version , Integer )
39
42
@uri = T . let ( uri , URI ::Generic )
40
43
@needs_parsing = T . let ( true , T ::Boolean )
41
- @parse_result = T . let ( parse , Prism :: ParseResult )
44
+ @parse_result = T . let ( parse , ParseResultType )
42
45
end
43
46
44
- sig { params ( other : Document ) . returns ( T ::Boolean ) }
47
+ sig { params ( other : Document [ T . untyped ] ) . returns ( T ::Boolean ) }
45
48
def ==( other )
46
49
self . class == other . class && uri == other . uri && @source == other . source
47
50
end
@@ -54,7 +57,7 @@ def language_id; end
54
57
type_parameters ( :T )
55
58
. params (
56
59
request_name : String ,
57
- block : T . proc . params ( document : Document ) . returns ( T . type_parameter ( :T ) ) ,
60
+ block : T . proc . params ( document : Document [ ParseResultType ] ) . returns ( T . type_parameter ( :T ) ) ,
58
61
) . returns ( T . type_parameter ( :T ) )
59
62
end
60
63
def cache_fetch ( request_name , &block )
@@ -93,7 +96,7 @@ def push_edits(edits, version:)
93
96
@cache . clear
94
97
end
95
98
96
- sig { abstract . returns ( Prism :: ParseResult ) }
99
+ sig { abstract . returns ( ParseResultType ) }
97
100
def parse ; end
98
101
99
102
sig { abstract . returns ( T ::Boolean ) }
0 commit comments