ObjFW
Instance Methods | List of all members
OFCountedSet Class Reference

An abstract class for a mutable unordered set of objects, counting how often it contains an object. More...

#import <ObjFW/ObjFW.h>

Inheritance diagram for OFCountedSet:
OFMutableSet OFSet OFObject <OFCollection> <OFCopying> <OFMutableCopying> <OFObject>

Instance Methods

(size_t) - countForObject:
 Returns how often the object is in the set. More...
 
(void) - enumerateObjectsAndCountUsingBlock:
 Executes a block for each object in the set. More...
 
- Instance Methods inherited from OFMutableSet
(instancetype) - init
 Initializes an already allocated OFMutableSet to be empty. More...
 
(instancetype) - initWithCapacity:
 Initializes an already allocated OFMutableSet with enough memory to hold the specified number of objects. More...
 
(void) - addObject:
 Adds the specified object to the set. More...
 
(void) - removeObject:
 Removes the specified object from the set. More...
 
(void) - minusSet:
 Removes all objects from the receiver which are in the specified set. More...
 
(void) - intersectSet:
 Removes all objects from the receiver which are not in the specified set. More...
 
(void) - unionSet:
 Creates a union of the receiver and the specified set. More...
 
(void) - removeAllObjects
 Removes all objects from the set.
 
(void) - makeImmutable
 Converts the mutable set to an immutable set.
 
- Instance Methods inherited from OFSet
(instancetype) - initWithSet:
 Initializes an already allocated set with the specified set. More...
 
(instancetype) - initWithArray:
 Initializes an already allocated set with the specified array. More...
 
(instancetype) - initWithObjects:
 Initializes an already allocated set with the specified objects. More...
 
(instancetype) - initWithObject:arguments:
 Initializes an already allocated set with the specified object and va_list. More...
 
(instancetype) - initWithObjects:count:
 Initializes an already allocated set with the specified objects. More...
 
(OFEnumerator *) - objectEnumerator
 Returns an OFEnumerator to enumerate through all objects of the set. More...
 
(bool) - isSubsetOfSet:
 Returns whether the receiver is a subset of the specified set. More...
 
(bool) - intersectsSet:
 Returns whether the receiver and the specified set have at least one object in common. More...
 
(OFSet *) - setByAddingObjectsFromSet:
 Creates a new set by creating the union of the receiver and the specified set. More...
 
(bool) - containsObject:
 Checks whether the set contains an object equal to the specified object. More...
 
(nullable id) - valueForKey:
 Returns the value for the specified key. More...
 
(void) - setValue:forKey:
 Set the value for the specified key. More...
 
(void) - enumerateObjectsUsingBlock:
 Executes a block for each object in the set. More...
 
(OFSet *) - filteredSetUsingBlock:
 Creates a new set, only containing the objects for which the block returns true. More...
 
- Instance Methods inherited from OFObject
(nullable OFMethodSignature *) - methodSignatureForSelector:
 Returns the method signature for the specified selector. More...
 
(void) - dealloc
 Deallocates the object. More...
 
(void) - performSelector:afterDelay:
 Performs the specified selector after the specified delay. More...
 
(void) - performSelector:withObject:afterDelay:
 Performs the specified selector with the specified object after the specified delay. More...
 
(void) - performSelector:withObject:withObject:afterDelay:
 Performs the specified selector with the specified objects after the specified delay. More...
 
(void) - performSelector:withObject:withObject:withObject:afterDelay:
 Performs the specified selector with the specified objects after the specified delay. More...
 
(void) - performSelector:withObject:withObject:withObject:withObject:afterDelay:
 Performs the specified selector with the specified objects after the specified delay. More...
 
(void) - performSelector:onThread:waitUntilDone:
 Performs the specified selector on the specified thread. More...
 
(void) - performSelector:onThread:withObject:waitUntilDone:
 Performs the specified selector on the specified thread with the specified object. More...
 
(void) - performSelector:onThread:withObject:withObject:waitUntilDone:
 Performs the specified selector on the specified thread with the specified objects. More...
 
(void) - performSelector:onThread:withObject:withObject:withObject:waitUntilDone:
 Performs the specified selector on the specified thread with the specified objects. More...
 
(void) - performSelector:onThread:withObject:withObject:withObject:withObject:waitUntilDone:
 Performs the specified selector on the specified thread with the specified objects. More...
 
(void) - performSelectorOnMainThread:waitUntilDone:
 Performs the specified selector on the main thread. More...
 
(void) - performSelectorOnMainThread:withObject:waitUntilDone:
 Performs the specified selector on the main thread with the specified object. More...
 
(void) - performSelectorOnMainThread:withObject:withObject:waitUntilDone:
 Performs the specified selector on the main thread with the specified objects. More...
 
(void) - performSelectorOnMainThread:withObject:withObject:withObject:waitUntilDone:
 Performs the specified selector on the main thread with the specified objects. More...
 
(void) - performSelectorOnMainThread:withObject:withObject:withObject:withObject:waitUntilDone:
 Performs the specified selector on the main thread with the specified objects. More...
 
(void) - performSelector:onThread:afterDelay:
 Performs the specified selector on the specified thread after the specified delay. More...
 
(void) - performSelector:onThread:withObject:afterDelay:
 Performs the specified selector on the specified thread with the specified object after the specified delay. More...
 
(void) - performSelector:onThread:withObject:withObject:afterDelay:
 Performs the specified selector on the specified thread with the specified objects after the specified delay. More...
 
(void) - performSelector:onThread:withObject:withObject:withObject:afterDelay:
 Performs the specified selector on the specified thread with the specified objects after the specified delay. More...
 
(void) - performSelector:onThread:withObject:withObject:withObject:withObject:afterDelay:
 Performs the specified selector on the specified thread with the specified objects after the specified delay. More...
 
(nullable id) - forwardingTargetForSelector:
 This method is called when resolveClassMethod: or resolveInstanceMethod: returned false. It should return a target to which the message should be forwarded. More...
 
(void) - doesNotRecognizeSelector:
 Handles messages which are not understood by the receiver. More...
 
- Instance Methods inherited from <OFObject>
(unsigned long) - hash
 Returns a hash for the object. More...
 
(unsigned int) - retainCount
 Returns the retain count. More...
 
(bool) - isProxy
 Returns whether the object is a proxy object. More...
 
(bool) - isKindOfClass:
 Returns a boolean whether the object is of the specified kind. More...
 
(bool) - isMemberOfClass:
 Returns a boolean whether the object is a member of the specified class. More...
 
(bool) - respondsToSelector:
 Returns a boolean whether the object responds to the specified selector. More...
 
(nullable IMP- methodForSelector:
 Returns the implementation for the specified selector. More...
 
(nullable id) - performSelector:
 Performs the specified selector. More...
 
(nullable id) - performSelector:withObject:
 Performs the specified selector with the specified object. More...
 
(nullable id) - performSelector:withObject:withObject:
 Performs the specified selector with the specified objects. More...
 
(nullable id) - performSelector:withObject:withObject:withObject:
 Performs the specified selector with the specified objects. More...
 
(nullable id) - performSelector:withObject:withObject:withObject:withObject:
 Performs the specified selector with the specified objects. More...
 
(bool) - isEqual:
 Checks two objects for equality. More...
 
(instancetype) - retain
 Increases the retain count. More...
 
(void) - release
 Decreases the retain count. More...
 
(instancetype) - autorelease
 Adds the object to the topmost autorelease pool of the thread's autorelease pool stack. More...
 
(instancetype) - self
 Returns the receiver. More...
 
(bool) - allowsWeakReference
 Returns whether the object allows a weak reference. More...
 
(bool) - retainWeakReference
 Retain a weak reference to this object. More...
 
- Instance Methods inherited from <OFCopying>
(id) - copy
 Copies the object. More...
 
- Instance Methods inherited from <OFMutableCopying>
(id) - mutableCopy
 Creates a mutable copy of the object. More...
 

Additional Inherited Members

- Class Methods inherited from OFMutableSet
(instancetype) + setWithCapacity:
 Creates a new OFMutableSet with enough memory to hold the specified number of objects. More...
 
- Class Methods inherited from OFSet
(instancetype) + set
 Creates a new set. More...
 
(instancetype) + setWithSet:
 Creates a new set with the specified set. More...
 
(instancetype) + setWithArray:
 Creates a new set with the specified array. More...
 
(instancetype) + setWithObjects:
 Creates a new set with the specified objects. More...
 
(instancetype) + setWithObjects:count:
 Creates a new set with the specified objects. More...
 
- Class Methods inherited from OFObject
(void) + load
 A method which is called once when the class is loaded into the runtime. More...
 
(void) + unload
 A method which is called when the class is unloaded from the runtime. More...
 
(void) + initialize
 A method which is called the moment before the first call to the class is being made. More...
 
(instancetype) + alloc
 Allocates memory for an instance of the class and sets up the memory pool for the object. More...
 
(Class) + class
 Returns the class. More...
 
(OFString *) + className
 Returns the name of the class as a string. More...
 
(bool) + isSubclassOfClass:
 Returns a boolean whether the class is a subclass of the specified class. More...
 
(nullable Class) + superclass
 Returns the superclass of the class. More...
 
(bool) + instancesRespondToSelector:
 Checks whether instances of the class respond to a given selector. More...
 
(bool) + conformsToProtocol:
 Checks whether the class conforms to a given protocol. More...
 
(nullable IMP+ instanceMethodForSelector:
 Returns the implementation of the instance method for the specified selector. More...
 
(nullable OFMethodSignature *) + instanceMethodSignatureForSelector:
 Returns the method signature of the instance method for the specified selector. More...
 
(OFString *) + description
 Returns a description for the class, which is usually the class name. More...
 
(nullable IMP+ replaceClassMethod:withMethodFromClass:
 Replaces a class method with a class method from another class. More...
 
(nullable IMP+ replaceInstanceMethod:withMethodFromClass:
 Replaces an instance method with an instance method from another class. More...
 
(void) + inheritMethodsFromClass:
 Adds all methods from the specified class to the class that is the receiver. More...
 
(bool) + resolveClassMethod:
 Try to resolve the specified class method. More...
 
(bool) + resolveInstanceMethod:
 Try to resolve the specified instance method. More...
 
(id) + copy
 Returns the class. More...
 
- Properties inherited from OFSet
OFArrayallObjects
 An array of all objects in the set.
 
ObjectType anyObject
 An arbitrary object in the set.
 
- Properties inherited from OFObject
OFStringclassName
 The name of the object's class.
 
OFStringdescription
 A description for the object. More...
 

Detailed Description

An abstract class for a mutable unordered set of objects, counting how often it contains an object.

Note
Subclasses must implement countForObject: (OFCountedSet) as well as all methods of OFSet and OFMutableSet that need to be implemented.

Method Documentation

◆ countForObject:()

- (size_t) countForObject: (ObjectType)  object

Returns how often the object is in the set.

Returns
How often the object is in the set

◆ enumerateObjectsAndCountUsingBlock:()

- (void) enumerateObjectsAndCountUsingBlock: (OFCountedSetEnumerationBlock block

Executes a block for each object in the set.

Parameters
blockThe block to execute for each object in the set

The documentation for this class was generated from the following files: