// // RACEvent.h // ReactiveCocoa // // Created by Justin Spahr-Summers on 2013-01-07. // Copyright (c) 2013 GitHub, Inc. All rights reserved. // #import /// Describes the type of a RACEvent. /// /// RACEventTypeCompleted - A `completed` event. /// RACEventTypeError - An `error` event. /// RACEventTypeNext - A `next` event. typedef enum : NSUInteger { RACEventTypeCompleted, RACEventTypeError, RACEventTypeNext } RACEventType; /// Represents an event sent by a RACSignal. /// /// This corresponds to the `Notification` class in Rx. @interface RACEvent : NSObject /// Returns a singleton RACEvent representing the `completed` event. + (instancetype)completedEvent; /// Returns a new event of type RACEventTypeError, containing the given error. + (instancetype)eventWithError:(NSError *)error; /// Returns a new event of type RACEventTypeNext, containing the given value. + (instancetype)eventWithValue:(id)value; /// The type of event represented by the receiver. @property (nonatomic, assign, readonly) RACEventType eventType; /// Returns whether the receiver is of type RACEventTypeCompleted or /// RACEventTypeError. @property (nonatomic, getter = isFinished, assign, readonly) BOOL finished; /// The error associated with an event of type RACEventTypeError. This will be /// nil for all other event types. @property (nonatomic, strong, readonly) NSError *error; /// The value associated with an event of type RACEventTypeNext. This will be /// nil for all other event types. @property (nonatomic, strong, readonly) id value; @end