| 874 | } |
| 875 | |
| 876 | std::string_view FeatureType::GetMetadata(feature::Metadata::EType type) |
| 877 | { |
| 878 | ParseMetaIds(); |
| 879 | |
| 880 | auto meta = m_metadata.Get(type); |
| 881 | if (meta.empty()) |
| 882 | { |
| 883 | auto const it = base::FindIf(m_metaIds, [&type](auto const & v) { return v.first == type; }); |
| 884 | if (it != m_metaIds.end()) |
| 885 | meta = m_metadata.Set(type, m_loadInfo->m_metaDeserializer->GetMetaById(it->second)); |
| 886 | } |
| 887 | return meta; |
| 888 | } |
| 889 | |
| 890 | bool FeatureType::HasMetadata(feature::Metadata::EType type) |
| 891 | { |