luxlabs header browser preview


@class NSHashTable, NSString, NSArray, NSCountedSet, MSPContainerPersister, MSPQuerySource, NSObject, NSMutableSet, NSMutableArray;
@protocol NSObject, MSPContainerStateSnapshot, OS_dispatch_queue, NSCopying;

@interface MSPContainer : NSObject <MSPContainerPersisterDelegate> {
    NSObject<OS_dispatch_queue> *_accessQueue;
    id<MSPContainerStateSnapshot> _currentStateSnapshot;
    NSArray *_currentProcessedContents;
    NSHashTable *_observers;
    NSCountedSet *_editCoalescingContexts;
    BOOL _isCommittingEnqueuedEdits;
    id<NSObject, NSCopying> _contextCoalescingFor;
    BOOL _coalescedEditsNeedEntireContents;
    NSMutableSet *_coalescedPartialContentIdentifiersToFetch;
    NSMutableArray *_enqueuedCoalescingEditBarrierBlocks;
    NSMutableArray *_enqueuedCoalescingCompletionBlocks;
    BOOL _hasScheduledDelayedCommitForCoalescedEdits;
    BOOL _hasLoadedContents;
}

@property (readonly, nonatomic) MSPQuerySource *entireContentsQuerySource;
@property (readonly, nonatomic) MSPContainerPersister *persister;
@property (readonly, nonatomic, getter=_accessQueue) NSObject<OS_dispatch_queue> *accessQueue;
@property (readonly, nonatomic) BOOL _preventsAssertionsForDuplicateStorageIdentifiers;
@property (nonatomic, getter=_simulatesClearingDiscardableDataAfterOperations, setter=_setSimulatesClearingDiscardableDataAfterOperations:) BOOL simulatesClearingDiscardableDataAfterOperations;
@property (readonly, nonatomic) BOOL containerHasLoadedContents;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

+ (void)_disableLogging;
+ (BOOL)_deletes:(unsigned long long)a0 mayRepresentDataLossIfAppliedTo:(unsigned long long)a1;
+ (void)_preventAssertionsForDuplicateStorageIdentifiersInContainersCreatedPerfomingBlock:(id /* block */)a0;
+ (void)clearDiscardableDataFromAllContainers;
+ (void)mutableObjectContentDidUpdate:(id)a0;

- (id)init;
- (void)dealloc;
- (void)removeObserver:(id)a0;
- (void).cxx_destruct;
- (void)addObserver:(id)a0;
- (BOOL)_checkAndAddCoalescedEditForContext:(id)a0 identifiers:(id)a1 enqueuedBlock:(id /* block */)a2 completionQueue:(id)a3 completion:(id /* block */)a4;
- (void)_clearObjectCacheIfNeeded;
- (void)_commitEditWithFinalContents:(id)a0 context:(id)a1 completion:(id /* block */)a2;
- (void)_commitPendingCoalescedEditsIfAny;
- (void)_endCoalescingEditsForContext:(id)a0;
- (void)_forEachObserver:(id /* block */)a0;
- (id)_objectsWithDuplicateStorageIdentifiersFromArray:(id)a0;
- (void)_performInitialLoadNotifyingObservers:(BOOL)a0 kickOffSynchronously:(BOOL)a1 completion:(id /* block */)a2;
- (void)_processNewEditedContents:(id)a0;
- (void)_processNewLoadedContents:(id)a0;
- (id)_processedContentsForPersisterContents:(id)a0;
- (void)accessContentsUsingConcurrentBlock:(id /* block */)a0;
- (void)accessStateSnapshotUsingConcurrentBlock:(id /* block */)a0;
- (id)beginCoalescingEditsWithContext:(id)a0;
- (void)coalesceEditsForContext:(id)a0 inBlock:(id /* block */)a1;
- (void)editByMergingStateSnapshot:(id)a0 mergeOptions:(id)a1 context:(id)a2 completionQueue:(id)a3 completion:(id /* block */)a4;
- (void)editContentsUsingBarrierBlock:(id /* block */)a0 completionQueue:(id)a1 completion:(id /* block */)a2;
- (void)editContentsUsingBarrierBlock:(id /* block */)a0 context:(id)a1 completionQueue:(id)a2 completion:(id /* block */)a3;
- (void)editObjectsWithIdentifiers:(id)a0 usingBarrierBlock:(id /* block */)a1 completionQueue:(id)a2 completion:(id /* block */)a3;
- (void)editObjectsWithIdentifiers:(id)a0 usingBarrierBlock:(id /* block */)a1 context:(id)a2 completionQueue:(id)a3 completion:(id /* block */)a4;
- (void)eraseFromStorageTypes:(unsigned long long)a0 withCompletionQueue:(id)a1 completion:(id /* block */)a2;
- (void)eraseWithCompletionQueue:(id)a0 completion:(id /* block */)a1;
- (id)initWithPersister:(id)a0;
- (void)persisterContentsDidChangeExternally:(id)a0;

@end