class RuboCop::Cop::Sorbet::ForbidUntypedStructProps
end
prop :bar, T.nilable(String)
const :foo, Integer
class SomeClass < T::Struct
# good
end
prop :bar, T.nilable(T.untyped)
const :foo, T.untyped
class SomeClass < T::Struct
# bad
@example
as a prop type for ‘T::Struct` or `T::ImmutableStruct`.
Disallows use of `T.untyped` or `T.nilable(T.untyped)`
def on_class(node)
def on_class(node) return unless subclass_of_t_struct?(node) untyped_props(node).each do |prop_type| add_offense(prop_type) end end