ObjFW  Check-in [4c6d9b7c1b]

Overview
Comment:Add -[superclass] to OFObject protocol.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 4c6d9b7c1b9e8e68f2b7119a21249e32bd606de5e6dfb43f6848e31ef22f083d
User & Date: js on 2014-01-12 23:38:22
Other Links: manifest | tags
Context
2014-01-13
13:28
Remove class_isKindOfClass(). check-in: 7c0fa1fa85 user: js tags: trunk
2014-01-12
23:38
Add -[superclass] to OFObject protocol. check-in: 4c6d9b7c1b user: js tags: trunk
2014-01-09
00:01
Doxyfile: Add more defines. check-in: 4cf723a962 user: js tags: trunk
Changes

Modified src/OFObject.h from [e73a1c649f] to [b36db29afe].

34
35
36
37
38
39
40


41
42
43
44
45
46
47
# import <objc/objc.h>
#endif

#ifdef OF_APPLE_RUNTIME
# import <objc/runtime.h>
# import <objc/message.h>
#endif



#if defined(__GNUC__)
# define restrict __restrict__
#elif __STDC_VERSION__ < 199901L
# define restrict
#endif








>
>







34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# import <objc/objc.h>
#endif

#ifdef OF_APPLE_RUNTIME
# import <objc/runtime.h>
# import <objc/message.h>
#endif

/*! @file */

#if defined(__GNUC__)
# define restrict __restrict__
#elif __STDC_VERSION__ < 199901L
# define restrict
#endif

152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
# define __bridge
# define __autoreleasing
#endif

#define OF_RETAIN_COUNT_MAX UINT_MAX
#define OF_NOT_FOUND SIZE_MAX

/*! @file */

/*!
 * @brief A result of a comparison.
 */
typedef enum of_comparison_result_t {
	/*! The left object is smaller than the right */
	OF_ORDERED_ASCENDING = -1,
	/*! Both objects are equal */







<
<







154
155
156
157
158
159
160


161
162
163
164
165
166
167
# define __bridge
# define __autoreleasing
#endif

#define OF_RETAIN_COUNT_MAX UINT_MAX
#define OF_NOT_FOUND SIZE_MAX



/*!
 * @brief A result of a comparison.
 */
typedef enum of_comparison_result_t {
	/*! The left object is smaller than the right */
	OF_ORDERED_ASCENDING = -1,
	/*! Both objects are equal */
231
232
233
234
235
236
237







238
239
240
241
242
243
244
/*!
 * @brief Returns the class of the object.
 *
 * @return The class of the object
 */
- (Class)class;








/*!
 * @brief Returns a boolean whether the object of the specified kind.
 *
 * @param class_ The class whose kind is checked
 * @return A boolean whether the object is of the specified kind
 */
- (bool)isKindOfClass: (Class)class_;







>
>
>
>
>
>
>







231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
/*!
 * @brief Returns the class of the object.
 *
 * @return The class of the object
 */
- (Class)class;

/*!
 * @brief Returns the superclass of the object.
 *
 * @return The superclass of the object
 */
- (Class)superclass;

/*!
 * @brief Returns a boolean whether the object of the specified kind.
 *
 * @param class_ The class whose kind is checked
 * @return A boolean whether the object is of the specified kind
 */
- (bool)isKindOfClass: (Class)class_;

Modified src/OFObject.m from [c604df4ce7] to [3b4e65cff2].

479
480
481
482
483
484
485





486
487
488
489
490
491
492
	return self;
}

- (Class)class
{
	return object_getClass(self);
}






- (OFString*)className
{
	return [OFString stringWithCString: object_getClassName(self)
				  encoding: OF_STRING_ENCODING_ASCII];
}








>
>
>
>
>







479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
	return self;
}

- (Class)class
{
	return object_getClass(self);
}

- (Class)superclass
{
	return class_getSuperclass(object_getClass(self));
}

- (OFString*)className
{
	return [OFString stringWithCString: object_getClassName(self)
				  encoding: OF_STRING_ENCODING_ASCII];
}

Modified src/autorelease.h from [1418290b1f] to [a57c59edaa].

9
10
11
12
13
14
15


16
17
18
19
20
21
22
23
24
25
26
27
28
 * 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.
 */



#ifdef __cplusplus
extern "C" {
#endif
/*! @file */

/*!
 * @brief Creates a new autorelease pool.
 *
 * @return An identifier for the created autorelease pool
 */
extern void* objc_autoreleasePoolPush();








>
>




<
<







9
10
11
12
13
14
15
16
17
18
19
20
21


22
23
24
25
26
27
28
 * 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.
 */

/*! @file */

#ifdef __cplusplus
extern "C" {
#endif


/*!
 * @brief Creates a new autorelease pool.
 *
 * @return An identifier for the created autorelease pool
 */
extern void* objc_autoreleasePoolPush();