ObjFW
|
A class for representing IRIs, URIs, URLs and URNs, for parsing them as well as accessing parts of them. More...
#include <ObjFW/ObjFW.h>
Instance Methods | |
(instancetype) | - initWithString: |
Initializes an already allocated OFIRI with the specified string. | |
(instancetype) | - initWithString:relativeToIRI: |
Initializes an already allocated OFIRI with the specified string and relative IRI. | |
(instancetype) | - initFileIRIWithPath: |
Initializes an already allocated OFIRI with the specified local file path. | |
(instancetype) | - initFileIRIWithPath:isDirectory: |
Initializes an already allocated OFIRI with the specified local file path. | |
(OFIRI *) | - IRIByAppendingPathComponent: |
Returns a new IRI with the specified path component appended. | |
(OFIRI *) | - IRIByAppendingPathComponent:isDirectory: |
Returns a new IRI with the specified path component appended. | |
(OFIRI *) | - IRIByAppendingPathExtension: |
Returns a new IRI with the specified path extension appended. | |
Instance Methods inherited from OFObject | |
(instancetype) | - init |
Initializes an already allocated object. | |
(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. | |
Class Methods | |
(instancetype) | + IRIWithString: |
Creates a new IRI with the specified string. | |
(instancetype) | + IRIWithString:relativeToIRI: |
Creates a new IRI with the specified string relative to the specified IRI. | |
(instancetype) | + fileIRIWithPath: |
Creates a new IRI with the specified local file path. | |
(instancetype) | + fileIRIWithPath:isDirectory: |
Creates a new IRI with the specified local file path. | |
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 | |
OFString * | scheme |
The scheme part of the IRI. | |
OFString * | host |
The host part of the IRI. | |
OFString * | percentEncodedHost |
The host part of the IRI in percent-encoded form. | |
OFNumber * | port |
The port part of the IRI. | |
OFString * | user |
The user part of the IRI. | |
OFString * | percentEncodedUser |
The user part of the IRI in percent-encoded form. | |
OFString * | password |
The password part of the IRI. | |
OFString * | percentEncodedPassword |
The password part of the IRI in percent-encoded form. | |
OFString * | path |
The path part of the IRI. | |
OFString * | percentEncodedPath |
The path part of the IRI in percent-encoded form. | |
OFArray * | pathComponents |
The path of the IRI split into components. | |
OFString * | lastPathComponent |
The last path component of the IRI. | |
OFString * | pathExtension |
The path extension of the IRI. | |
OFString * | query |
The query part of the IRI. | |
OFString * | percentEncodedQuery |
The query part of the IRI in percent-encoded form. | |
OFArray * | queryItems |
The query part of the IRI as an array. | |
OFString * | fragment |
The fragment part of the IRI. | |
OFString * | percentEncodedFragment |
The fragment part of the IRI in percent-encoded form. | |
OFString * | string |
The IRI as a string. | |
OFIRI * | IRIByStandardizingPath |
The IRI with relative subpaths resolved. | |
OFIRI * | IRIByDeletingLastPathComponent |
The IRI with the last path component deleted. | |
OFIRI * | IRIByDeletingPathExtension |
The IRI with the path extension deleted. | |
OFIRI * | IRIByAddingPercentEncodingForUnicodeCharacters |
The IRI with percent-encoding added for all Unicode characters. | |
OFString * | fileSystemRepresentation |
The local file system representation for a file IRI. | |
Properties inherited from OFObject | |
OFString * | className |
The name of the object's class. | |
OFString * | description |
A description for the object. | |
A class for representing IRIs, URIs, URLs and URNs, for parsing them as well as accessing parts of them.
This class follows RFC 3976 and RFC 3987.
+ (instancetype) fileIRIWithPath: | (OFString *) | path |
Creates a new IRI with the specified local file path.
If a directory exists at the specified path, a slash is appended if there is no slash yet.
path | The local file path |
OFInvalidFormatException | The specified path is not a valid path |
+ (instancetype) fileIRIWithPath: | (OFString *) | path | |
isDirectory: | (bool) | isDirectory |
Creates a new IRI with the specified local file path.
path | The local file path |
isDirectory | Whether the path is a directory, in which case a slash is appended if there is no slash yet |
- (instancetype) initFileIRIWithPath: | (OFString *) | path |
Initializes an already allocated OFIRI with the specified local file path.
If a directory exists at the specified path, a slash is appended if there is no slash yet.
path | The local file path |
OFInvalidFormatException | The specified path is not a valid path |
- (instancetype) initFileIRIWithPath: | (OFString *) | path | |
isDirectory: | (bool) | isDirectory |
- (instancetype) initWithString: | (OFString *) | string |
Initializes an already allocated OFIRI with the specified string.
string | A string describing an IRI |
OFInvalidFormatException | The specified string is not a valid IRI string |
- (instancetype) initWithString: | (OFString *) | string | |
relativeToIRI: | (OFIRI *) | IRI |
Initializes an already allocated OFIRI with the specified string and relative IRI.
string | A string describing a relative or absolute IRI |
IRI | An IRI to which the string is relative |
OFInvalidFormatException | The specified string is not a valid IRI string |
Returns a new IRI with the specified path component appended.
If the IRI is a file IRI, the file system is queried whether the appended component is a directory.
component | The path component to append. If it starts with the slash, the component is not appended, but replaces the path instead. |
- (OFIRI *) IRIByAppendingPathComponent: | (OFString *) | component | |
isDirectory: | (bool) | isDirectory |
Returns a new IRI with the specified path component appended.
component | The path component to append. If it starts with the slash, the component is not appended, but replaces the path instead. |
isDirectory | Whether the appended component is a directory, meaning that the IRI path should have a trailing slash |
Returns a new IRI with the specified path extension appended.
extension | The path extension to append |
+ (instancetype) IRIWithString: | (OFString *) | string |
Creates a new IRI with the specified string.
string | A string describing an IRI |
OFInvalidFormatException | The specified string is not a valid IRI string |
+ (instancetype) IRIWithString: | (OFString *) | string | |
relativeToIRI: | (OFIRI *) | IRI |
Creates a new IRI with the specified string relative to the specified IRI.
string | A string describing a relative or absolute IRI |
IRI | An IRI to which the string is relative |
OFInvalidFormatException | The specified string is not a valid IRI string |
|
readwriteatomic |
The local file system representation for a file IRI.
|
readnonatomiccopy |
The last path component of the IRI.
Returns the empty string if the path is the root.
|
readnonatomiccopy |
The path of the IRI split into components.
The first component must always be /
to designate the root.
|
readwriteatomic |
The query part of the IRI as an array.
For example, a query like key1=value1&key2=value2
would correspond to the following array:
@[ [OFPair pairWithFirstObject: @"key1" secondObject: @"value1"], [OFPair pairWithFirstObject: @"key2" secondObject: @"value2"], ]
OFInvalidFormatException | The query is not in the correct format |