luxlabs header browser preview


@class NSTimer, NSCondition, NSError, NSMutableArray;

@interface DYFuture : NSOperation {
    NSTimer *_timeout;
    NSCondition *_condition;
    BOOL _cancelled;
    id _result;
    NSError *_error;
    NSMutableArray *_notifyList;
    NSMutableArray *_inflightDependencies;
    BOOL _started;
    id /* block */ _completion;
    long long _priority;
}

@property (retain, nonatomic) id result;
@property (retain, nonatomic) NSError *error;
@property (readonly, nonatomic) BOOL resolved;
@property (readonly, retain, nonatomic) id resolvedResult;
@property (readonly, retain, nonatomic) NSError *resolvedError;

+ (BOOL)automaticallyNotifiesObserversForKey:(id)a0;
+ (id)future;
+ (BOOL)enableAssertMainThread;
+ (id)futureWithResult:(id)a0 error:(id)a1;
+ (BOOL)logPerformance;

- (BOOL)isExecuting;
- (id)init;
- (BOOL)isCancelled;
- (void)dealloc;
- (void)start;
- (BOOL)isFinished;
- (BOOL)isAsynchronous;
- (long long)queuePriority;
- (void)waitUntilFinished;
- (void)setCompletionBlock:(id /* block */)a0;
- (void)observeValueForKeyPath:(id)a0 ofObject:(id)a1 change:(id)a2 context:(void *)a3;
- (void)setQueuePriority:(long long)a0;
- (id /* block */)completionBlock;
- (void)resolveWithFuture:(id)a0;
- (void)cancel;
- (id)dependencies;
- (void)addDependency:(id)a0;
- (void)addResultHandler:(id /* block */)a0;
- (BOOL)boolResult;
- (void)_setResult:(id)a0 error:(id)a1 notify_NOLOCK:(BOOL)a2;
- (void)_addDependency_REQUIRESLOCK:(id)a0;
- (id)_dependencies_NOLOCK;
- (void)_start_NOLOCK;
- (BOOL)_waitForDependencies_REQUIRESLOCK;
- (int)intResult;
- (void)notifyGroup:(id)a0;
- (void)notifyOnQueue:(id)a0 handler:(id /* block */)a1;
- (void)requestResult:(id /* block */)a0;
- (void)timeoutAfter:(double)a0 label:(id)a1;
- (unsigned int)uint32Result;
- (void)waitUntilResolved;

@end