InvalidateMask(ulong)
Invalidate all properties stored from multiple documents that match a document key mask.
Read time 1 minuteLast updated 10 days ago
Definition
- Type: Method
- Namespace: UnityEditor.Search
- Assembly: UnityEditor
void InvalidateMask(ulong documentKeyMask)
Parameters
A document key mask.
Remarks
This operation is slower than the simpler IPropertyDatabaseView.Invalidate since we cannot rely on a binary search to find all keys that match the mask.
using (var view = propertyDatabase.GetView()){ // Store properties of multiple documents. for (ulong i = 0; i < 10; ++i) { for (var j = 0; j < 10; ++j) view.Store(i, view.CreatePropertyHash($"prop{j}"), $"value{j}"); } // Invalidate all documents that match any set bits of the mask. ulong invalidatedDocumentMask = 2; view.InvalidateMask(invalidatedDocumentMask); // The invalidated documents can no longer be retrieved. for (ulong i = 0; i < 10; ++i) { if ((i & invalidatedDocumentMask) == 0) continue; if (view.TryLoad(i, out IEnumerable<object> invalidatedDocumentValues)) Assert.Fail("TryLoad should have failed to retrieve the invalidated document values."); }}
Additional Resources: IPropertyDatabaseView.CreateDocumentKey.