class RuboCop::Cop::Sorbet::ForbidUntypedStructProps
end
prop :bar, T.nilable(String)
const :foo, Integer
class SomeClass
# good
end
prop :bar, T.nilable(T.untyped)
const :foo, T.untyped
class SomeClass
# bad
@example
as a prop type for ‘T::Struct`.
This cop 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 |untyped_prop| add_offense(untyped_prop.child_nodes[1]) end end