| 1107 | |
| 1108 | private: |
| 1109 | const CompatListValue* absl_nonnull ProjectKeys() const { |
| 1110 | absl::call_once(keys_once_, [this]() { |
| 1111 | ListValueBuilderImpl builder(map_.get_allocator().arena()); |
| 1112 | builder.Reserve(map_.size()); |
| 1113 | |
| 1114 | for (const auto& entry : map_) { |
| 1115 | builder.UnsafeAdd(entry.first); |
| 1116 | } |
| 1117 | |
| 1118 | std::move(builder).BuildCompatAt(&keys_[0]); |
| 1119 | }); |
| 1120 | return std::launder( |
| 1121 | reinterpret_cast<const CompatListValueImpl*>(&keys_[0])); |
| 1122 | } |
| 1123 | |
| 1124 | const ValueFlatHashMap map_; |
| 1125 | mutable absl::once_flag keys_once_; |
nothing calls this directly
no test coverage detected