A generic encoder for JVM objects.
A factory for constructing encoders that convert objects and primitives to and from the internal row format using catalyst expressions and code generation.
A factory for constructing encoders that convert external row to/from the Spark SQL internal binary representation.