Overview
Context
Changes
Modified src/Makefile
from [f7f9f30a1b]
to [effe04d38d].
︙ | | |
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
|
OFXMLParser.m \
OFXMLProcessingInstructions.m \
base64.m \
of_asprintf.m \
of_strptime.m \
unicode.m
INCLUDES := ${SRCS:.m=.h} \
OFCollection.h \
OFJSONEncoding.h \
OFSerialization.h \
ObjFW.h \
asprintf.h \
${ATOMIC_H} \
macros.h \
objfw-defs.h \
INCLUDES := ${SRCS:.m=.h} \
OFCollection.h \
OFJSONRepresentation.h \
OFSerialization.h \
ObjFW.h \
asprintf.h \
${ATOMIC_H} \
macros.h \
objfw-defs.h \
${THREADING_H}
SRCS += OFArray_adjacent.m \
OFArray_adjacentSubarray.m \
OFCountedSet_hashtable.m \
OFDictionary_hashtable.m \
OFMutableArray_adjacent.m \
|
︙ | | |
Modified src/OFArray.h
from [526bbf0b50]
to [f3beab2ab4].
︙ | | |
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
|
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
|
-
+
-
+
|
#include <stdarg.h>
#import "OFObject.h"
#import "OFCollection.h"
#import "OFEnumerator.h"
#import "OFSerialization.h"
#import "OFJSONEncoding.h"
#import "OFJSONRepresentation.h"
@class OFString;
#ifdef OF_HAVE_BLOCKS
typedef void (^of_array_enumeration_block_t)(id object, size_t index,
BOOL *stop);
typedef BOOL (^of_array_filter_block_t)(id odject, size_t index);
typedef id (^of_array_map_block_t)(id object, size_t index);
typedef id (^of_array_fold_block_t)(id left, id right);
#endif
/**
* \brief An abstract class for storing objects in an array.
*/
@interface OFArray: OFObject <OFCopying, OFMutableCopying, OFCollection,
OFSerialization, OFJSON>
OFSerialization, OFJSONRepresentation>
#ifdef OF_HAVE_PROPERTIES
@property (readonly) size_t count;
#endif
/**
* \brief Creates a new OFArray.
*
|
︙ | | |
Modified src/OFDictionary.h
from [747799a643]
to [d9d9397b7f].
︙ | | |
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
|
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
|
-
+
-
+
|
#include <stdarg.h>
#import "OFObject.h"
#import "OFCollection.h"
#import "OFEnumerator.h"
#import "OFSerialization.h"
#import "OFJSONEncoding.h"
#import "OFJSONRepresentation.h"
@class OFArray;
#ifdef OF_HAVE_BLOCKS
typedef void (^of_dictionary_enumeration_block_t)(id key, id object,
BOOL *stop);
typedef BOOL (^of_dictionary_filter_block_t)(id key, id object);
typedef id (^of_dictionary_map_block_t)(id key, id object);
#endif
/**
* \brief An abstract class for storing objects in a dictionary.
*
* Keys are copied and thus must conform to the OFCopying protocol.
*
* Note: Fast enumeration on a dictionary enumerates through the keys of the
* dictionary.
*/
@interface OFDictionary: OFObject <OFCopying, OFMutableCopying, OFCollection,
OFSerialization, OFJSON>
OFSerialization, OFJSONRepresentation>
/**
* \brief Creates a new OFDictionary.
*
* \return A new autoreleased OFDictionary
*/
+ dictionary;
|
︙ | | |
Deleted src/OFJSONEncoding.h version [c607df7ec1].
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
|
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
|
/*
* Copyright (c) 2008, 2009, 2010, 2011, 2012
* Jonathan Schleifer <js@webkeks.org>
*
* All rights reserved.
*
* This file is part of ObjFW. It may be distributed under the terms of the
* Q Public License 1.0, which can be found in the file LICENSE.QPL included in
* the packaging of this file.
*
* Alternatively, it may be distributed under the terms of the GNU General
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
@class OFString;
/**
* \brief A category implemented by classes that support encoding to a JSON
* representation.
*
* \warning Although this method can be called directly on classes other than
* OFArray and OFDictionary, this will generate invalid JSON, as JSON
* requires all data to be encapsulated in an array or a dictionary!
*/
@protocol OFJSON
/**
* \brief Returns the JSON representation of the object as a string.
*
* \return The JSON representation of the object as a string.
*/
- (OFString*)JSONRepresentation;
@end
|
Added src/OFJSONRepresentation.h version [88b187db64].
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
|
/*
* Copyright (c) 2008, 2009, 2010, 2011, 2012
* Jonathan Schleifer <js@webkeks.org>
*
* All rights reserved.
*
* This file is part of ObjFW. It may be distributed under the terms of the
* Q Public License 1.0, which can be found in the file LICENSE.QPL included in
* the packaging of this file.
*
* Alternatively, it may be distributed under the terms of the GNU General
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
@class OFString;
/**
* \brief A protocol implemented by classes that support encoding to a JSON
* representation.
*
* \warning Although this method can be called directly on classes other than
* OFArray and OFDictionary, this will generate invalid JSON, as JSON
* requires all data to be encapsulated in an array or a dictionary!
*/
@protocol OFJSONRepresentation
/**
* \brief Returns the JSON representation of the object as a string.
*
* \return The JSON representation of the object as a string.
*/
- (OFString*)JSONRepresentation;
@end
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
Modified src/OFNull.h
from [c46812a151]
to [23bbed5cc4].
︙ | | |
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
-
+
-
+
|
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
#import "OFObject.h"
#import "OFSerialization.h"
#import "OFJSONEncoding.h"
#import "OFJSONRepresentation.h"
/**
* \brief A class for representing null values in collections.
*/
@interface OFNull: OFObject <OFCopying, OFSerialization, OFJSON>
@interface OFNull: OFObject <OFCopying, OFSerialization, OFJSONRepresentation>
/**
* \brief Returns an OFNull singleton.
*
* \return An OFNull singleton
*/
+ null;
@end
|
Modified src/OFNumber.h
from [2ab0482390]
to [6fa2f56574].
︙ | | |
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
-
+
|
# define __STDC_CONSTANT_MACROS
#endif
#include <sys/types.h>
#import "OFObject.h"
#import "OFSerialization.h"
#import "OFJSONEncoding.h"
#import "OFJSONRepresentation.h"
/**
* \brief The type of a number.
*/
typedef enum of_number_type_t {
OF_NUMBER_BOOL,
OF_NUMBER_CHAR,
|
︙ | | |
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
-
+
|
OF_NUMBER_FLOAT,
OF_NUMBER_DOUBLE,
} of_number_type_t;
/**
* \brief Provides a way to store a number in an object.
*/
@interface OFNumber: OFObject <OFCopying, OFSerialization, OFJSON>
@interface OFNumber: OFObject <OFCopying, OFSerialization, OFJSONRepresentation>
{
union of_number_value {
BOOL bool_;
signed char char_;
signed short short_;
signed int int_;
signed long long_;
|
︙ | | |
Modified src/OFString.h
from [ce6af38102]
to [1b7d10d7f5].
︙ | | |
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
-
+
|
#endif
#include <stdarg.h>
#include <inttypes.h>
#import "OFObject.h"
#import "OFSerialization.h"
#import "OFJSONEncoding.h"
#import "OFJSONRepresentation.h"
#import "macros.h"
@class OFConstantString;
typedef uint32_t of_unichar_t;
|
︙ | | |
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
|
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
|
-
+
|
* <b>Warning:</b> If you add methods to OFString using a category, you are not
* allowed to access the ivars directly, as these might be still uninitialized
* for a constant string and get initialized on the first message! Therefore,
* you should use the corresponding methods to get the ivars, which ensures the
* constant string is initialized.
*/
@interface OFString: OFObject <OFCopying, OFMutableCopying, OFComparing,
OFSerialization, OFJSON>
OFSerialization, OFJSONRepresentation>
#ifdef OF_HAVE_PROPERTIES
@property (readonly) size_t length;
#endif
/**
* \brief Creates a new OFString.
*
|
︙ | | |