I'm imagining this would be a few rules, and not sure what namespace they would fall under. Something like:
Typing/InstanceVarTypeRestriction: # and ClassVarTypeRestriction
Enabled: true
DefaultValue: false # don't require for instance vars with default values
Typing/LocalVarTypeRestriction:
Enabled: true
Typing/MethodParamTypeRestriction:
Enabled: true
DefaultValue: false
PrivateMethods: false # don't require on private methods
ProtectedMethods: false
Typing/MethodReturnTypeRestriction:
Enabled: true
Typing/ProcReturnTypeRestriction:
Enabled: true
# Maybe some others, can't think of any others currently
This would be disabled by default. It wouldn't be perfect, but would definitely be good enough for my use-cases. If this feature would be welcome, I can start prototyping an implementation.
I'm imagining this would be a few rules, and not sure what namespace they would fall under. Something like:
This would be disabled by default. It wouldn't be perfect, but would definitely be good enough for my use-cases. If this feature would be welcome, I can start prototyping an implementation.