'A record is encoded by encoding the values of its fields
in the order that they are declared. In other words, a record
is encoded as just the concatenation of the encodings of its fields.
Field values are encoded per their schema.'

def write_record(self, writers_schema, datum, encoder):

    for field in writers_schema.fields:
        self.write_data(field.type, datum.get(field.name), encoder)
