Generated RBI structure for Kredis attributes
mainWhen using the Kredis compiler, the generated RBI follows a specific pattern:
- A module named
GeneratedKredisAttributeMethodsis added to the class. - Methods like
kredis_listreturn types likeKredis::Types::List. - Methods like
kredis_flagreturnKredis::Types::Flagand have a corresponding?method returningT::Boolean. kredis_enumgenerates a private nested class (e.g.,PrivateEnum<AttributeName>) inheriting fromKredis::Types::Enum, containing methods for each allowed value.
# typed: true
class Person
module GeneratedKredisAttributeMethods
sig { returns(Kredis::Types::Flag) }
def awesome; end
sig { returns(T::Boolean) }
def awesome?; end
sig { returns(PrivateEnumMorning) }
def morning; end
sig { returns(Kredis::Types::List) }
def names; end
sig { returns(Kredis::Types::Counter) }
def steps; end
class PrivateEnumMorning < Kredis::Types::Enum
sig { void }
def black!; end
sig { returns(T::Boolean) }
def black?; end
sig { void }
def blue!; end
sig { returns(T::Boolean) }
def blue?; end
sig { void }
def bright!; end
sig { returns(T::Boolean) }
def bright?; end
end
end
end