Extract types which don't require additional typecasting to a method

Database specific adapters shouldn't need to override `type_cast` to
define types which are already in an acceptable state.
Merge pull request #15351 from sgrif/sg-allowed-types

Extract types which don't require additional typecasting to a method