Takes the encoded values from the fields of a type T and builds an ImmutableRecord from them, using the given schema.
Takes the encoded values from the fields of a type T and builds an ImmutableRecord from them, using the given schema.
The schema for a record must be of Type Schema.Type.RECORD but the case class may have been a subclass of a trait. In this case the schema will be a union and so we must extract the correct subschema from the union.
the full name of the record in Avro, taking into account Avro modifiers such as @AvroNamespace and @AvroErasedName. This name is used for extracting the specific subschema from a union schema.