ObjFW
|
A class for storing and manipulating arbitrary data in an array. More...
#include <ObjFW/ObjFW.h>
Instance Methods | |
(instancetype) | - initWithCapacity: |
Initializes an already allocated OFMutableData with enough memory to hold the the specified number of items which all have an item size of 1. | |
(instancetype) | - initWithItemSize:capacity: |
Initializes an already allocated OFMutableData with enough memory to hold the the specified number of items which all have the same specified size. | |
(void *) | - mutableItemAtIndex: |
Returns a specific item of the OFMutableData. | |
(void) | - addItem: |
Adds an item to the OFMutableData. | |
(void) | - insertItem:atIndex: |
Adds an item to the OFMutableData at the specified index. | |
(void) | - addItems:count: |
Adds items from a C array to the OFMutableData. | |
(void) | - insertItems:atIndex:count: |
Adds items from a C array to the OFMutableData at the specified index. | |
(void) | - increaseCountBy: |
Increases the count by the specified number. The new items are all filled with null bytes. | |
(void) | - removeItemAtIndex: |
Removes the item at the specified index. | |
(void) | - removeItemsInRange: |
Removes the specified amount of items at the specified index. | |
(void) | - removeLastItem |
Removes the last item. | |
(void) | - removeAllItems |
Removes all items. | |
(void) | - makeImmutable |
Converts the mutable data to an immutable data. | |
Instance Methods inherited from OFData | |
(instancetype) | - init |
Initializes an already allocated OFData to be empty with an item size of 1. | |
(instancetype) | - initWithItemSize: |
Initializes an already allocated OFData to be empty with the specified item size. | |
(instancetype) | - initWithItems:count: |
Initializes an already allocated OFData with the specified count items of size 1. | |
(instancetype) | - initWithItems:count:itemSize: |
Initializes an already allocated OFData with the specified count items of the specified size. | |
(instancetype) | - initWithItemsNoCopy:count:freeWhenDone: |
Initializes an already allocated OFData with the specified count items of size 1 by taking over ownership of the specified items pointer. | |
(instancetype) | - initWithItemsNoCopy:count:itemSize:freeWhenDone: |
Initializes an already allocated OFData with the specified count items of the specified size by taking ownership of the specified items pointer. | |
(instancetype) | - initWithContentsOfFile: |
Initializes an already allocated OFData with an item size of 1, containing the data of the specified file. | |
(instancetype) | - initWithContentsOfIRI: |
Initializes an already allocated OFData with an item size of 1, containing the data of the specified IRI. | |
(instancetype) | - initWithStringRepresentation: |
Initializes an already allocated OFData with an item size of 1, containing the data of the hex string representation. | |
(instancetype) | - initWithBase64EncodedString: |
Initializes an already allocated OFData with an item size of 1, containing the data of the Base64-encoded string. | |
(OFComparisonResult) | - compare: |
Compares the data to other data. | |
(const void *) | - itemAtIndex: |
Returns a specific item of the OFData. | |
(OFData *) | - subdataWithRange: |
Returns the data in the specified range as a new OFData. | |
(OFRange) | - rangeOfData:options:range: |
Returns the range of the data. | |
(void) | - writeToFile: |
Writes the OFData into the specified file. | |
(void) | - writeToIRI: |
Writes the OFData to the specified IRI. | |
(id) | - objectByParsingMessagePackWithDepthLimit: |
Parses the MessagePack representation and returns it as an object. | |
Instance Methods inherited from OFObject | |
(nullable OFMethodSignature *) | - methodSignatureForSelector: |
Returns the method signature for the specified selector. | |
(void) | - dealloc |
Deallocates the object. | |
(void) | - performSelector:afterDelay: |
Performs the specified selector after the specified delay. | |
(void) | - performSelector:withObject:afterDelay: |
Performs the specified selector with the specified object after the specified delay. | |
(void) | - performSelector:withObject:withObject:afterDelay: |
Performs the specified selector with the specified objects after the specified delay. | |
(void) | - performSelector:withObject:withObject:withObject:afterDelay: |
Performs the specified selector with the specified objects after the specified delay. | |
(void) | - performSelector:withObject:withObject:withObject:withObject:afterDelay: |
Performs the specified selector with the specified objects after the specified delay. | |
(void) | - performSelector:onThread:waitUntilDone: |
Performs the specified selector on the specified thread. | |
(void) | - performSelector:onThread:withObject:waitUntilDone: |
Performs the specified selector on the specified thread with the specified object. | |
(void) | - performSelector:onThread:withObject:withObject:waitUntilDone: |
Performs the specified selector on the specified thread with the specified objects. | |
(void) | - performSelector:onThread:withObject:withObject:withObject:waitUntilDone: |
Performs the specified selector on the specified thread with the specified objects. | |
(void) | - performSelector:onThread:withObject:withObject:withObject:withObject:waitUntilDone: |
Performs the specified selector on the specified thread with the specified objects. | |
(void) | - performSelectorOnMainThread:waitUntilDone: |
Performs the specified selector on the main thread. | |
(void) | - performSelectorOnMainThread:withObject:waitUntilDone: |
Performs the specified selector on the main thread with the specified object. | |
(void) | - performSelectorOnMainThread:withObject:withObject:waitUntilDone: |
Performs the specified selector on the main thread with the specified objects. | |
(void) | - performSelectorOnMainThread:withObject:withObject:withObject:waitUntilDone: |
Performs the specified selector on the main thread with the specified objects. | |
(void) | - performSelectorOnMainThread:withObject:withObject:withObject:withObject:waitUntilDone: |
Performs the specified selector on the main thread with the specified objects. | |
(void) | - performSelector:onThread:afterDelay: |
Performs the specified selector on the specified thread after the specified delay. | |
(void) | - performSelector:onThread:withObject:afterDelay: |
Performs the specified selector on the specified thread with the specified object after the specified delay. | |
(void) | - performSelector:onThread:withObject:withObject:afterDelay: |
Performs the specified selector on the specified thread with the specified objects after the specified delay. | |
(void) | - performSelector:onThread:withObject:withObject:withObject:afterDelay: |
Performs the specified selector on the specified thread with the specified objects after the specified delay. | |
(void) | - performSelector:onThread:withObject:withObject:withObject:withObject:afterDelay: |
Performs the specified selector on the specified thread with the specified objects after the specified delay. | |
(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. | |
(void) | - doesNotRecognizeSelector: |
Handles messages which are not understood by the receiver. | |
Instance Methods inherited from <OFObject> | |
(unsigned long) | - hash |
Returns a hash for the object. | |
(unsigned int) | - retainCount |
Returns the retain count. | |
(bool) | - isProxy |
Returns whether the object is a proxy object. | |
(bool) | - isKindOfClass: |
Returns a boolean whether the object is of the specified kind. | |
(bool) | - isMemberOfClass: |
Returns a boolean whether the object is a member of the specified class. | |
(bool) | - respondsToSelector: |
Returns a boolean whether the object responds to the specified selector. | |
(nullable IMP) | - methodForSelector: |
Returns the implementation for the specified selector. | |
(nullable id) | - performSelector: |
Performs the specified selector. | |
(nullable id) | - performSelector:withObject: |
Performs the specified selector with the specified object. | |
(nullable id) | - performSelector:withObject:withObject: |
Performs the specified selector with the specified objects. | |
(nullable id) | - performSelector:withObject:withObject:withObject: |
Performs the specified selector with the specified objects. | |
(nullable id) | - performSelector:withObject:withObject:withObject:withObject: |
Performs the specified selector with the specified objects. | |
(bool) | - isEqual: |
Checks two objects for equality. | |
(instancetype) | - retain |
Increases the retain count. | |
(void) | - release |
Decreases the retain count. | |
(instancetype) | - autorelease |
Adds the object to the topmost autorelease pool of the thread's autorelease pool stack. | |
(instancetype) | - self |
Returns the receiver. | |
(bool) | - allowsWeakReference |
Returns whether the object allows a weak reference. | |
(bool) | - retainWeakReference |
Retain a weak reference to this object. | |
Instance Methods inherited from <OFCopying> | |
(id) | - copy |
Copies the object. | |
Instance Methods inherited from <OFMutableCopying> | |
(id) | - mutableCopy |
Creates a mutable copy of the object. | |
Instance Methods inherited from <OFComparing> | |
(OFComparisonResult) | - compare: |
Compares the object to another object. | |
Class Methods | |
(instancetype) | + dataWithCapacity: |
Creates a new OFMutableData with enough memory to hold the specified number of items which all have an item size of 1. | |
(instancetype) | + dataWithItemSize:capacity: |
Creates a new OFMutableData with enough memory to hold the specified number of items which all have the same specified size. | |
Class Methods inherited from OFData | |
(instancetype) | + data |
Creates a new OFData that is empty with an item size of 1. | |
(instancetype) | + dataWithItemSize: |
Creates a new OFData that is empty with the specified item size. | |
(instancetype) | + dataWithItems:count: |
Creates a new OFData with the specified count items of size 1. | |
(instancetype) | + dataWithItems:count:itemSize: |
Creates a new OFData with the specified count items of the specified size. | |
(instancetype) | + dataWithItemsNoCopy:count:freeWhenDone: |
Creates a new OFData with the specified count items of size 1 by taking over ownership of the specified items pointer. | |
(instancetype) | + dataWithItemsNoCopy:count:itemSize:freeWhenDone: |
Creates a new OFData with the specified count items of the specified size by taking ownership of the specified items pointer. | |
(instancetype) | + dataWithContentsOfFile: |
Creates a new OFData with an item size of 1, containing the data of the specified file. | |
(instancetype) | + dataWithContentsOfIRI: |
Creates a new OFData with an item size of 1, containing the data of the specified IRI. | |
(instancetype) | + dataWithStringRepresentation: |
Creates a new OFData with an item size of 1, containing the data of the hex string representation. | |
(instancetype) | + dataWithBase64EncodedString: |
Creates a new OFData with an item size of 1, containing the data of the Base64-encoded string. | |
Class Methods inherited from OFObject | |
(void) | + load |
A method which is called once when the class is loaded into the runtime. | |
(void) | + unload |
A method which is called when the class is unloaded from the runtime. | |
(void) | + initialize |
A method which is called the moment before the first call to the class is being made. | |
(instancetype) | + alloc |
Allocates memory for an instance of the class and sets up the memory pool for the object. | |
(Class) | + class |
Returns the class. | |
(OFString *) | + className |
Returns the name of the class as a string. | |
(bool) | + isSubclassOfClass: |
Returns a boolean whether the class is a subclass of the specified class. | |
(nullable Class) | + superclass |
Returns the superclass of the class. | |
(bool) | + instancesRespondToSelector: |
Checks whether instances of the class respond to a given selector. | |
(bool) | + conformsToProtocol: |
Checks whether the class conforms to a given protocol. | |
(nullable IMP) | + instanceMethodForSelector: |
Returns the implementation of the instance method for the specified selector. | |
(nullable OFMethodSignature *) | + instanceMethodSignatureForSelector: |
Returns the method signature of the instance method for the specified selector. | |
(OFString *) | + description |
Returns a description for the class, which is usually the class name. | |
(nullable IMP) | + replaceClassMethod:withMethodFromClass: |
Replaces a class method with a class method from another class. | |
(nullable IMP) | + replaceInstanceMethod:withMethodFromClass: |
Replaces an instance method with an instance method from another class. | |
(void) | + inheritMethodsFromClass: |
Adds all methods from the specified class to the class that is the receiver. | |
(bool) | + resolveClassMethod: |
Try to resolve the specified class method. | |
(bool) | + resolveInstanceMethod: |
Try to resolve the specified instance method. | |
(id) | + copy |
Returns the class. | |
Properties | |
void * | mutableItems |
All items of the OFMutableData as a C array. | |
void * | mutableFirstItem |
The first item of the OFMutableData or NULL . | |
void * | mutableLastItem |
The last item of the OFMutableData or NULL . | |
Properties inherited from OFData | |
size_t | itemSize |
The size of a single item in the OFData in bytes. | |
size_t | count |
The number of items in the OFData. | |
const void * | items |
All elements of the OFData as a C array. | |
const void * | firstItem |
The first item of the OFData or NULL . | |
const void * | lastItem |
The last item of the OFData or NULL . | |
OFString * | stringRepresentation |
The string representation of the data. | |
OFString * | stringByBase64Encoding |
A string containing the data in Base64 encoding. | |
OFString * | stringByMD5Hashing |
The MD5 hash of the data as a string. | |
OFString * | stringByRIPEMD160Hashing |
The RIPEMD-160 hash of the data as a string. | |
OFString * | stringBySHA1Hashing |
The SHA-1 hash of the data as a string. | |
OFString * | stringBySHA224Hashing |
The SHA-224 hash of the data as a string. | |
OFString * | stringBySHA256Hashing |
The SHA-256 hash of the data as a string. | |
OFString * | stringBySHA384Hashing |
The SHA-384 hash of the data as a string. | |
OFString * | stringBySHA512Hashing |
The SHA-512 hash of the data as a string. | |
id | objectByParsingMessagePack |
The data interpreted as MessagePack representation and parsed as an object. | |
Properties inherited from OFObject | |
OFString * | className |
The name of the object's class. | |
OFString * | description |
A description for the object. | |
Properties inherited from <OFMessagePackRepresentation> | |
OFData * | messagePackRepresentation |
The MessagePack representation of the object as OFData. | |
A class for storing and manipulating arbitrary data in an array.
- (void) addItem: | (const void *) | item |
Adds an item to the OFMutableData.
item | A pointer to an arbitrary item |
- (void) addItems: | (const void *) | items | |
count: | (size_t) | count |
Adds items from a C array to the OFMutableData.
items | A C array containing the items to add |
count | The number of items to add |
+ (instancetype) dataWithCapacity: | (size_t) | capacity |
Creates a new OFMutableData with enough memory to hold the specified number of items which all have an item size of 1.
capacity | The initial capacity for the OFMutableData |
+ (instancetype) dataWithItemSize: | (size_t) | itemSize | |
capacity: | (size_t) | capacity |
Creates a new OFMutableData with enough memory to hold the specified number of items which all have the same specified size.
itemSize | The size of a single element in the OFMutableData |
capacity | The initial capacity for the OFMutableData |
- (void) increaseCountBy: | (size_t) | count |
Increases the count by the specified number. The new items are all filled with null bytes.
count | The count by which to increase the count |
- (instancetype) initWithCapacity: | (size_t) | capacity |
Initializes an already allocated OFMutableData with enough memory to hold the the specified number of items which all have an item size of 1.
capacity | The initial capacity for the OFMutableData |
- (instancetype) initWithItemSize: | (size_t) | itemSize | |
capacity: | (size_t) | capacity |
Initializes an already allocated OFMutableData with enough memory to hold the the specified number of items which all have the same specified size.
itemSize | The size of a single element in the OFMutableData |
capacity | The initial capacity for the OFMutableData |
- (void) insertItem: | (const void *) | item | |
atIndex: | (size_t) | index |
Adds an item to the OFMutableData at the specified index.
item | A pointer to an arbitrary item |
index | The index where the item should be added |
- (void) insertItems: | (const void *) | items | |
atIndex: | (size_t) | index | |
count: | (size_t) | count |
Adds items from a C array to the OFMutableData at the specified index.
items | A C array containing the items to add |
index | The index where the items should be added |
count | The number of items to add |
- (void *) mutableItemAtIndex: | (size_t) | index |
Returns a specific item of the OFMutableData.
Modifying the returned item directly is allowed and will change the contents of the data.
index | The number of the item to return |
- (void) removeItemAtIndex: | (size_t) | index |
Removes the item at the specified index.
index | The index of the item to remove |
- (void) removeItemsInRange: | (OFRange) | range |
Removes the specified amount of items at the specified index.
range | The range of items to remove |
|
readwriteatomic |
All items of the OFMutableData as a C array.
Modifying the returned array directly is allowed and will change the contents of the data.