<< "rpc_port_parcel_read_array_count(h, &l);" << NLine(1);
stream << Tab(1) << "for (int i = 0; i < l; i++) ";
GenBrace(stream, TAB_SIZE, [&]() {
- auto& mt = *type.GetMetaType();
+ auto* ptr = type.GetMetaType();
+ if (ptr == nullptr)
+ return;
+
+ auto& mt = *ptr;
stream << AddIndent(TAB_SIZE * 2,
ConvertTypeToDeserializer(mt, "v", "h", true));
stream << Tab(2) << "c.push_back(std::move(v));" << NLine(1);
<< NLine(1);
stream << Tab(4) << "for (int i = 0; i < l; i++)" << NLine(1);
GenBrace(stream, TAB_SIZE * 4, [&]() {
- auto& mt = *type.GetMetaType();
+ auto* ptr = type.GetMetaType();
+ if (ptr == nullptr)
+ return;
+
+ auto& mt = *ptr;
if (!mt.IsUserDefinedType() && mt.GetMetaType() == nullptr) {
stream << Tab(5) << "var v = h.Read"
<< ConvertTypeToParcelType(mt.ToString())