This PR defines the RecordFunctorFactory class, which is used to deserialize the FlatBuffers RecordFunctor table. We create an Enum type for each RecordFunctor class. Each template specialization has a unique RecordType and parser function.
Flatbuffers Enums are represented as an unscoped enumeration, so we can map them to an Integer type. This Factory class contains a vector that maps from an Enum integer to its corresponding parser function. All parser functions have the same signature. We use std::bind to support functions that require extra arguments.
This PR defines the
RecordFunctorFactory
class, which is used to deserialize the FlatBuffersRecordFunctor
table. We create an Enum type for eachRecordFunctor
class. Each template specialization has a uniqueRecordType
and parser function.Flatbuffers Enums are represented as an unscoped enumeration, so we can map them to an Integer type. This Factory class contains a vector that maps from an Enum integer to its corresponding parser function. All parser functions have the same signature. We use
std::bind
to support functions that require extra arguments.