class RuboCop::Cop::Sorbet::ForbidUntypedStructProps

This cop disallows use of `T.untyped` or `T.nilable(T.untyped)` as a prop type for `T::Struct`.

@example

# bad
class SomeClass
  const :foo, T.untyped
  prop :bar, T.nilable(T.untyped)
end

# good
class SomeClass
  const :foo, Integer
  prop :bar, T.nilable(String)
end

Constants

MSG

Public Instance Methods

on_class(node) click to toggle source
# File lib/rubocop/cop/sorbet/forbid_untyped_struct_props.rb, line 48
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