ObjFW  Diff

Differences From Artifact [2905af2049]:

To Artifact [94ac818021]:


22
23
24
25
26
27
28
29

30
31
32
33
34
35
36
37
38
39

40
41
42
43
44

45
46
47
48
49

50
51
52
53
54

55
56
57
58
59

60
61
62
63
64

65
66
67
68
69

70
71
72
73
74

75
76
77
78
79

80
81
82
83
84
85
86
87
88
89
90
91
92
93
22
23
24
25
26
27
28

29
30
31
32
33
34
35
36
37
38

39
40
41
42
43

44
45
46
47
48

49
50
51
52
53

54
55
56
57
58

59
60
61
62
63

64
65
66
67
68

69
70
71
72
73

74
75
76
77
78

79







80
81
82
83
84
85
86







-
+









-
+




-
+




-
+




-
+




-
+




-
+




-
+




-
+




-
+
-
-
-
-
-
-
-







@class OFString;

/*!
 * @class OFURL OFURL.h ObjFW/OFURL.h
 *
 * @brief A class for parsing URLs and accessing parts of it.
 */
@interface OFURL: OFObject <OFCopying, OFSerialization>
@interface OFURL: OFObject <OFCopying, OFMutableCopying, OFSerialization>
{
	OFString *_scheme, *_host;
	uint16_t _port;
	OFString *_user, *_password, *_path, *_parameters, *_query, *_fragment;
}

/*!
 * The scheme part of the URL.
 */
@property (nonatomic, copy) OFString *scheme;
@property (readonly, nonatomic, copy) OFString *scheme;

/*!
 * The host part of the URL.
 */
@property (nonatomic, copy) OFString *host;
@property (readonly, nonatomic, copy) OFString *host;

/*!
 * The port part of the URL.
 */
@property (nonatomic) uint16_t port;
@property (readonly, nonatomic) uint16_t port;

/*!
 * The user part of the URL.
 */
@property OF_NULLABLE_PROPERTY (nonatomic, copy) OFString *user;
@property OF_NULLABLE_PROPERTY (readonly, nonatomic, copy) OFString *user;

/*!
 * The password part of the URL.
 */
@property OF_NULLABLE_PROPERTY (nonatomic, copy) OFString *password;
@property OF_NULLABLE_PROPERTY (readonly, nonatomic, copy) OFString *password;

/*!
 * The path part of the URL.
 */
@property (nonatomic, copy) OFString *path;
@property (readonly, nonatomic, copy) OFString *path;

/*!
 * The parameters part of the URL.
 */
@property OF_NULLABLE_PROPERTY (nonatomic, copy) OFString *parameters;
@property OF_NULLABLE_PROPERTY (readonly, nonatomic, copy) OFString *parameters;

/*!
 * The query part of the URL.
 */
@property OF_NULLABLE_PROPERTY (nonatomic, copy) OFString *query;
@property OF_NULLABLE_PROPERTY (readonly, nonatomic, copy) OFString *query;

/*!
 * The fragment part of the URL.
 */
@property OF_NULLABLE_PROPERTY (nonatomic, copy) OFString *fragment;
@property OF_NULLABLE_PROPERTY (readonly, nonatomic, copy) OFString *fragment;

/*!
 * @brief Creates a new URL.
 *
 * @return A new, autoreleased OFURL
 */
+ (instancetype)URL;

/*!
 * @brief Creates a new URL with the specified string.
 *
 * @param string A string describing a URL
 * @return A new, autoreleased OFURL
 */
107
108
109
110
111
112
113


114
115
116
117
118
119
120
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115







+
+







/*!
 * @brief Creates a new URL with the specified local file path.
 *
 * @param path The local file path
 * @return A new, autoreleased OFURL
 */
+ (instancetype)fileURLWithPath: (OFString *)path;

- init OF_UNAVAILABLE;

/*!
 * @brief Initializes an already allocated OFURL with the specified string.
 *
 * @param string A string describing a URL
 * @return An initialized OFURL
 */
136
137
138
139
140
141
142


131
132
133
134
135
136
137
138
139







+
+
 *
 * @return The URL as a string
 */
- (OFString *)string;
@end

OF_ASSUME_NONNULL_END

#import "OFMutableURL.h"