Skip to content

Commit

Permalink
Fix FFI::DataConverter non-generic usage
Browse files Browse the repository at this point in the history
Error was `RBS::InvalidTypeApplication`:

    Type `::FFI::DataConverter` is generic but used as a non generic type

at:

    def typedef: [T < Type] (T old, Symbol | DataConverter add, ?untyped) -> T

DataConverter being a generic type, it needs type arguments, which in
turn needs these generic type arguments declared beforehand for `typedef`.
  • Loading branch information
lloeki authored and larskanis committed Dec 30, 2024
1 parent c960f4f commit 278e45d
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion sig/ffi/library.rbs
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ module FFI
def find_type: (ffi_lib_type t) -> Type
def freeze: () -> void
def function_names: (_ToS name, Array[Type | singleton(Struct)] arg_types) -> Array[String]
def typedef: [T < Type] (T old, Symbol | DataConverter add, ?untyped) -> T
def typedef: [T < Type, N, R, C] (T old, Symbol | DataConverter[N, R, C] add, ?untyped) -> T
| (Symbol old, Symbol add, ?untyped) -> (Type | Enum)
| [X < DataConverter[N, R, C], N, R, C] (X old, Symbol add, ?untyped) -> Type::Mapped[X, N, R, C]
| (:enum old, Array[Symbol | Integer] add, ?untyped) -> Enum
Expand Down

0 comments on commit 278e45d

Please sign in to comment.