|
Macaulay2 Engine
|
EngineObject / MutableEngineObject — shared bases that supply the hash an M2 interpreter object expects. More...
Go to the source code of this file.
Classes | |
| class | EngineObject |
| Base class for engine objects that are immutable once their hash has been pinned (typically once they cross over to the front end). More... | |
| class | MutableEngineObject |
| Base class for engine objects that may mutate, so their hash must be identity-based rather than content-based. More... | |
EngineObject / MutableEngineObject — shared bases that supply the hash an M2 interpreter object expects.
Declares two parallel bases:
The hashes are the cache keys M2's interpreter HashTable uses to identify engine objects within a session; std::hash<T> is unsuitable because engine objects are too large to hash in full per lookup.
Definition in file hash.hpp.