In the following section you find all available cops:
Department Sorbet
- Sorbet/AllowIncompatibleOverride
- Sorbet/BindingConstantWithoutTypeAlias
- Sorbet/BuggyObsoleteStrictMemoization
- Sorbet/CallbackConditionalsBinding
- Sorbet/CheckedTrueInSignature
- Sorbet/ConstantsFromStrings
- Sorbet/EmptyLineAfterSig
- Sorbet/EnforceSigilOrder
- Sorbet/EnforceSignatures
- Sorbet/EnforceSingleSigil
- Sorbet/FalseSigil
- Sorbet/ForbidComparableTEnum
- Sorbet/ForbidExtendTSigHelpersInShims
- Sorbet/ForbidIncludeConstLiteral
- Sorbet/ForbidRBIOutsideOfAllowedPaths
- Sorbet/ForbidSuperclassConstLiteral
- Sorbet/ForbidTStruct
- Sorbet/ForbidTUnsafe
- Sorbet/ForbidTUntyped
- Sorbet/ForbidTypeAliasedShapes
- Sorbet/ForbidUntypedStructProps
- Sorbet/HasSigil
- Sorbet/IgnoreSigil
- Sorbet/ImplicitConversionMethod
- Sorbet/KeywordArgumentOrdering
- Sorbet/MultipleTEnumValues
- Sorbet/ObsoleteStrictMemoization
- Sorbet/RedundantExtendTSig
- Sorbet/Refinement
- Sorbet/SignatureBuildOrder
- Sorbet/SingleLineRbiClassModuleDefinitions
- Sorbet/StrictSigil
- Sorbet/StrongSigil
- Sorbet/TrueSigil
- Sorbet/TypeAliasName
- Sorbet/ValidGemVersionAnnotations
- Sorbet/ValidSigil
- Sorbet/VoidCheckedTests
In addition to the cops defined in this gem, it also modifies the behaviour of some other cops defined in other RuboCop gems:
- Style/MutableConstant: In addition to the default behaviour, RuboCop Sorbet makes this cop
T.let
aware, so thatCONST = T.let([1, 2, 3], T::Array[Integer])
is also treated as a mutable literal constant value.