ReactiveObjC (三五)(RACSequence)

@interface RACSequence<__covariant ValueType> : RACStream 

@property (nonatomic, strong, readonly, nullable) ValueType head;
@property (nonatomic, strong, readonly, nullable) RACSequence *tail;
@property (nonatomic, copy, readonly) NSArray *array;
@property (nonatomic, copy, readonly) NSEnumerator *objectEnumerator;
@property (nonatomic, copy, readonly) RACSequence *eagerSequence;
@property (nonatomic, copy, readonly) RACSequence *lazySequence;
- (RACSignal *)signal;
- (RACSignal *)signalWithScheduler:(RACScheduler *)scheduler;
- (id)foldLeftWithStart:(nullable id)start reduce:(id _Nullable (^)(id _Nullable accumulator, ValueType _Nullable value))reduce;
- (id)foldRightWithStart:(nullable id)start reduce:(id _Nullable (^)(id _Nullable first, RACSequence *rest))reduce;
- (BOOL)any:(BOOL (^)(ValueType _Nullable value))block;
- (BOOL)all:(BOOL (^)(ValueType _Nullable value))block;
- (nullable ValueType)objectPassingTest:(BOOL (^)(ValueType _Nullable value))block;
+ (RACSequence *)sequenceWithHeadBlock:(ValueType _Nullable (^)(void))headBlock tailBlock:(nullable RACSequence *(^)(void))tailBlock;
@end

@interface RACSequence<__covariant ValueType> (RACStream)
+ (RACSequence *)return:(nullable ValueType)value;
+ (RACSequence *)empty;
typedef RACSequence * _Nullable (^RACSequenceBindBlock)(ValueType _Nullable value, BOOL *stop);
- (RACSequence *)bind:(RACSequenceBindBlock (^)(void))block;
- (RACSequence *)concat:(RACSequence *)sequence;
- (RACSequence *)zipWith:(RACSequence *)sequence;

@end

@interface RACSequence<__covariant ValueType> (RACStreamOperations)
- (RACSequence *)flattenMap:(__kindof RACSequence * _Nullable (^)(ValueType _Nullable value))block;
- (RACSequence *)flatten;
- (RACSequence *)map:(id _Nullable (^)(ValueType _Nullable value))block;
- (RACSequence *)mapReplace:(nullable id)object;
- (RACSequence *)filter:(BOOL (^)(id _Nullable value))block;
- (RACSequence *)ignore:(nullable ValueType)value;
- (RACSequence *)reduceEach:(id _Nullable (^)())reduceBlock;
- (RACSequence *)startWith:(nullable ValueType)value;
- (RACSequence *)skip:(NSUInteger)skipCount;
- (RACSequence *)take:(NSUInteger)count;
+ (RACSequence *)zip:(id)sequence;
+ (RACSequence *)zip:(id)sequences reduce:(id _Nullable (^)())reduceBlock;
+ (RACSequence *)concat:(id)sequences;
- (RACSequence *)scanWithStart:(nullable id)startingValue reduce:(id _Nullable (^)(id _Nullable running, ValueType _Nullable next))reduceBlock;
- (RACSequence *)scanWithStart:(nullable id)startingValue reduceWithIndex:(id _Nullable (^)(id _Nullable running, ValueType _Nullable next, NSUInteger index))reduceBlock;
- (RACSequence *)combinePreviousWithStart:(nullable ValueType)start reduce:(id _Nullable (^)(ValueType _Nullable previous, ValueType _Nullable current))reduceBlock;
- (RACSequence *)takeUntilBlock:(BOOL (^)(ValueType _Nullable x))predicate;
- (RACSequence *)takeWhileBlock:(BOOL (^)(ValueType _Nullable x))predicate;
- (RACSequence *)skipUntilBlock:(BOOL (^)(ValueType _Nullable x))predicate;
- (RACSequence *)skipWhileBlock:(BOOL (^)(ValueType _Nullable x))predicate;
- (RACSequence *)distinctUntilChanged;

你可能感兴趣的:(ReactiveObjC (三五)(RACSequence))