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
|
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
|
-
+
-
+
-
+
-
-
+
-
+
-
+
-
+
|
{
unsigned char *_items;
size_t _count, _itemSize;
bool _freeWhenDone;
}
/*!
* The size of a single item in the OFData in bytes.
* @brief The size of a single item in the OFData in bytes.
*/
@property (readonly, nonatomic) size_t itemSize;
/*!
* The number of items in the OFData.
* @brief The number of items in the OFData.
*/
@property (readonly, nonatomic) size_t count;
/*!
* All elements of the OFData as a C array.
* @brief All elements of the OFData as a C array.
*
* @warning The pointer is only valid until the OFData is changed!
*
*/
@property (readonly, nonatomic) const void *items OF_RETURNS_INNER_POINTER;
/*!
* The first item of the OFData or NULL.
* @brief The first item of the OFData or `NULL`.
*/
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) const void *firstItem
OF_RETURNS_INNER_POINTER;
/*!
* The last item of the OFData or NULL.
* @brief The last item of the OFData or `NULL`.
*/
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) const void *lastItem
OF_RETURNS_INNER_POINTER;
/*!
* The string representation of the data.
* @brief The string representation of the data.
*
* The string representation is a hex dump of the data, grouped by itemSize
* bytes.
*/
@property (readonly, nonatomic) OFString *stringRepresentation;
/*!
* A string containing the data in Base64 encoding.
* @brief A string containing the data in Base64 encoding.
*/
@property (readonly, nonatomic) OFString *stringByBase64Encoding;
/*!
* @brief Creates a new OFData with the specified `count` items of size 1.
*
* @param items The items to store in the OFData
|