48 MessagePart part_{dccl::UNKNOWN};
50 const google::protobuf::Message* root_message_{
nullptr};
51 const google::protobuf::Descriptor* root_descriptor_{
nullptr};
66 Bitset* root_bits_{
nullptr};
70 template <
typename FieldCodecType>
71 void set_codec_specific_data(std::shared_ptr<dccl::any> data)
73 codec_specific_[std::type_index(
typeid(FieldCodecType))] = data;
76 template <
typename FieldCodecType> std::shared_ptr<dccl::any> codec_specific_data()
78 return codec_specific_.at(std::type_index(
typeid(FieldCodecType)));
81 template <
typename FieldCodecType>
bool has_codec_specific_data()
83 return codec_specific_.count(std::type_index(
typeid(FieldCodecType)));
87 std::map<std::type_index, std::shared_ptr<dccl::any>> codec_specific_;