in pulsar/schema/definition.py [0:0]
def _get_fields(cls, dct):
# Build a set of valid fields for this record
fields = OrderedDict()
for name, value in dct.items():
if issubclass(type(value), EnumMeta):
value = CustomEnum(value)
elif type(value) == RecordMeta:
# We expect an instance of a record rather than the class itself
value = value()
if isinstance(value, Record) or isinstance(value, Field):
fields[name] = value
return fields