MultiIndexedInMemoryStore provides a simple implementation backed by a four-level map. For each predicate sym, we have a separate map, using the index and the hash of the nth argument and then hash of the entire atom.
| 544 | // For each predicate sym, we have a separate map, using the index and the hash of the nth argument |
| 545 | // and then hash of the entire atom. |
| 546 | type MultiIndexedInMemoryStore struct { |
| 547 | InMemoryStore[map[uint16]map[uint64]map[uint64]*ast.Atom] |
| 548 | } |
| 549 | |
| 550 | // NewMultiIndexedInMemoryStore constructs a new MultiIndexedInMemoryStore. |
| 551 | func NewMultiIndexedInMemoryStore() MultiIndexedInMemoryStore { |
nothing calls this directly
no outgoing calls
no test coverage detected