// Copyright 2018 the V8 project authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef V8_SNAPSHOT_REFERENCES_H_ #define V8_SNAPSHOT_REFERENCES_H_ #include "src/base/bit-field.h" #include "src/base/hashmap.h" #include "src/execution/isolate.h" #include "src/utils/identity-map.h" namespace v8 { namespace internal { // Values must be contiguous and start at 0 since they're directly used as // array indices. enum class SnapshotSpace : uint8_t { … }; static constexpr int kNumberOfSnapshotSpaces = …; class SerializerReference { … }; // SerializerReference has to fit in an IdentityMap value field. static_assert …; class SerializerReferenceMap { … }; } // namespace internal } // namespace v8 #endif // V8_SNAPSHOT_REFERENCES_H_