mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-09-10 22:45:16 +00:00
Use this array while enumerating ASRangeController instances in response to UIApplication notifications, as it is possible for these events to trigger the mutation of the ASWeakSet and cause an enumeration error.
43 lines
1.0 KiB
Objective-C
43 lines
1.0 KiB
Objective-C
//
|
|
// ASWeakSet.h
|
|
// AsyncDisplayKit
|
|
//
|
|
// Created by Adlai Holler on 1/7/16.
|
|
// Copyright © 2016 Facebook. All rights reserved.
|
|
//
|
|
|
|
#import <Foundation/Foundation.h>
|
|
|
|
NS_ASSUME_NONNULL_BEGIN
|
|
|
|
@interface ASWeakSet<__covariant ObjectType> : NSObject<NSFastEnumeration>
|
|
|
|
/// Returns YES if the receiver is empty, NO otherwise.
|
|
@property (nonatomic, readonly, getter=isEmpty) BOOL empty;
|
|
|
|
/// Returns YES if `object` is in the receiver, NO otherwise.
|
|
- (BOOL)containsObject:(ObjectType)object;
|
|
|
|
/// Insets `object` into the set.
|
|
- (void)addObject:(ObjectType)object;
|
|
|
|
/// Removes object from the set.
|
|
- (void)removeObject:(ObjectType)object;
|
|
|
|
/// Removes all objects from the set.
|
|
- (void)removeAllObjects;
|
|
|
|
/// Returns a standard *retained* NSArray of all objects. Not free to generate, but useful for iterating over contents.
|
|
- (NSArray *)allObjects;
|
|
|
|
/**
|
|
How many objects are contained in this set.
|
|
|
|
NOTE: This method is O(N). Consider using the `empty`
|
|
property.
|
|
*/
|
|
@property (nonatomic, readonly) NSUInteger count;
|
|
|
|
@end
|
|
|
|
NS_ASSUME_NONNULL_END |