ObjFW  Check-in [8347c2ef5e]

Overview
Comment:Move OFFastEnumeration protocol to OFEnumerator.h.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 8347c2ef5e97c39a978d446333eee26376a669607e66dfa5fcfcd361f8eeb92d
User & Date: js on 2010-01-31 21:51:36
Other Links: manifest | tags
Context
2010-01-31
22:05
Small optimization. check-in: 305317e5ea user: js tags: trunk
21:51
Move OFFastEnumeration protocol to OFEnumerator.h. check-in: 8347c2ef5e user: js tags: trunk
2010-01-30
20:54
Remove TODO file as this is not a good way to keep track of things. check-in: b6132938c0 user: js tags: trunk
Changes

Modified src/Makefile from [cffb8debfd] to [b004a3e1eb].

27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
       ${OFTHREAD_M}		\
       OFURLEncoding.m		\
       OFXMLElement.m		\
       OFXMLParser.m		\
       unicode.m

INCLUDES := ${SRCS:.m=.h}	\
	    OFFastEnumeration.h	\
	    OFMacros.h		\
	    ObjFW.h		\
	    asprintf.h		\
	    ${ATOMIC_H}		\
	    objfw-defs.h	\
	    ${THREADING_H}








<







27
28
29
30
31
32
33

34
35
36
37
38
39
40
       ${OFTHREAD_M}		\
       OFURLEncoding.m		\
       OFXMLElement.m		\
       OFXMLParser.m		\
       unicode.m

INCLUDES := ${SRCS:.m=.h}	\

	    OFMacros.h		\
	    ObjFW.h		\
	    asprintf.h		\
	    ${ATOMIC_H}		\
	    objfw-defs.h	\
	    ${THREADING_H}

Modified src/OFArray.h from [f31644bdce] to [a5522e34d4].

9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 * the packaging of this file.
 */

#include <stdarg.h>

#import "OFObject.h"
#import "OFEnumerator.h"
#import "OFFastEnumeration.h"

@class OFDataArray;
@class OFString;

/**
 * The OFArray class is a class for storing objects in an array.
 */







<







9
10
11
12
13
14
15

16
17
18
19
20
21
22
 * the packaging of this file.
 */

#include <stdarg.h>

#import "OFObject.h"
#import "OFEnumerator.h"


@class OFDataArray;
@class OFString;

/**
 * The OFArray class is a class for storing objects in an array.
 */

Modified src/OFDictionary.h from [520f646873] to [bbde3d4fc4].

9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 * the packaging of this file.
 */

#include <stdarg.h>

#import "OFObject.h"
#import "OFEnumerator.h"
#import "OFFastEnumeration.h"

@class OFArray;

struct of_dictionary_bucket
{
	OFObject <OFCopying> *key;
	OFObject	     *object;







<







9
10
11
12
13
14
15

16
17
18
19
20
21
22
 * the packaging of this file.
 */

#include <stdarg.h>

#import "OFObject.h"
#import "OFEnumerator.h"


@class OFArray;

struct of_dictionary_bucket
{
	OFObject <OFCopying> *key;
	OFObject	     *object;

Modified src/OFEnumerator.h from [1e45836bf9] to [95bf700ece].

22
23
24
25
26
27
28



























/**
 * Resets the enumerator, so the next call to nextObject returns the first
 * object again.
 */
- reset;
@end

































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
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

/**
 * Resets the enumerator, so the next call to nextObject returns the first
 * object again.
 */
- reset;
@end

/*
 * This needs to be exactly like this because it's hardcoded in the compiler.
 *
 * We need this bad check to see if we already imported Cocoa, which defines
 * this as well.
 */
#define of_fast_enumeration_state_t NSFastEnumerationState
#ifndef NSINTEGER_DEFINED
typedef struct __of_fast_enumeration_state {
	unsigned long state;
	id *itemsPtr;
	unsigned long *mutationsPtr;
	unsigned long extra[5];
} of_fast_enumeration_state_t;
#endif

/**
 * The OFFastEnumeration protocol needs to be implemented by all classes
 * supporting fast enumeration.
 */
@protocol OFFastEnumeration
- (int)countByEnumeratingWithState: (of_fast_enumeration_state_t*)state
			   objects: (id*)objects
			     count: (int)count;
@end

Deleted src/OFFastEnumeration.h version [7da30d91d4].

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
35
36
37
38
/*
 * Copyright (c) 2008 - 2009
 *   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 included in
 * the packaging of this file.
 */

#import "OFObject.h"

/*
 * This needs to be exactly like this because it's hardcoded in the compiler.
 *
 * We need this bad check to see if we already imported Cocoa, which defines
 * this as well.
 */
#define of_fast_enumeration_state_t NSFastEnumerationState
#ifndef NSINTEGER_DEFINED
typedef struct __of_fast_enumeration_state {
	unsigned long state;
	id *itemsPtr;
	unsigned long *mutationsPtr;
	unsigned long extra[5];
} of_fast_enumeration_state_t;
#endif

/**
 * The OFFastEnumeration protocol needs to be implemented by all classes
 * supporting fast enumeration.
 */
@protocol OFFastEnumeration
- (int)countByEnumeratingWithState: (of_fast_enumeration_state_t*)state
			   objects: (id*)objects
			     count: (int)count;
@end
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<