ObjFW  Check-in [c40a295629]

Overview
Comment:Either restrict subclassing or reserve ivars
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: c40a295629818291fcaecd5fc04880db5d9115be05c8042d2697aaf1d14a0a4e
User & Date: js on 2022-09-12 14:34:38
Other Links: manifest | tags
Context
2022-09-16
13:15
OFString: Improve exceptions check-in: 7dc3d12cad user: js tags: trunk
2022-09-12
14:34
Either restrict subclassing or reserve ivars check-in: c40a295629 user: js tags: trunk
08:52
Restrict subclassing on more classes check-in: 1038191a03 user: js tags: trunk
Changes

Modified src/OFEnumerator.h from [514f228b0c] to [27d5a99680].

94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
 *
 * @brief A class which provides methods to enumerate through collections.
 */
@interface OFEnumerator OF_GENERIC(ObjectType): OFObject <OFFastEnumeration>
#if !defined(OF_HAVE_GENERICS) && !defined(DOXYGEN)
# define ObjectType id
#endif
{
	OF_RESERVE_IVARS(OFEnumerator, 4)
}

/**
 * @brief Returns the next object or `nil` if there is none left.
 *
 * @return The next object or `nil` if there is none left
 */
- (nullable ObjectType)nextObject;








<
<
<
<







94
95
96
97
98
99
100




101
102
103
104
105
106
107
 *
 * @brief A class which provides methods to enumerate through collections.
 */
@interface OFEnumerator OF_GENERIC(ObjectType): OFObject <OFFastEnumeration>
#if !defined(OF_HAVE_GENERICS) && !defined(DOXYGEN)
# define ObjectType id
#endif




/**
 * @brief Returns the next object or `nil` if there is none left.
 *
 * @return The next object or `nil` if there is none left
 */
- (nullable ObjectType)nextObject;

Modified src/OFMapTable.h from [db5052bd42] to [382835ac81].

227
228
229
230
231
232
233



234
235
236
237
238
239
240

/**
 * @class OFMapTableEnumerator OFMapTable.h ObjFW/OFMapTable.h
 *
 * @brief A class which provides methods to enumerate through an OFMapTable's
 *	  keys or objects.
 */



@interface OFMapTableEnumerator: OFObject
{
	OFMapTable *_mapTable;
	struct OFMapTableBucket *_Nonnull *_Nullable _buckets;
	uint32_t _capacity;
	unsigned long _mutations, *_Nullable _mutationsPtr, _position;
}







>
>
>







227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243

/**
 * @class OFMapTableEnumerator OFMapTable.h ObjFW/OFMapTable.h
 *
 * @brief A class which provides methods to enumerate through an OFMapTable's
 *	  keys or objects.
 */
#ifndef OF_MAP_TABLE_M
OF_SUBCLASSING_RESTRICTED
#endif
@interface OFMapTableEnumerator: OFObject
{
	OFMapTable *_mapTable;
	struct OFMapTableBucket *_Nonnull *_Nullable _buckets;
	uint32_t _capacity;
	unsigned long _mutations, *_Nullable _mutationsPtr, _position;
}

Modified src/OFMapTable.m from [155910f8b1] to [61602c79fe].

8
9
10
11
12
13
14


15
16
17
18
19
20
21
 * 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.
 */



#include "config.h"

#include <stdlib.h>
#include <string.h>

#include <assert.h>







>
>







8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 * 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.
 */

#define OF_MAP_TABLE_M

#include "config.h"

#include <stdlib.h>
#include <string.h>

#include <assert.h>

Modified src/OFNotification.h from [de7bff6c2a] to [c3409634e1].

29
30
31
32
33
34
35
36
37
38
39
40
41

42
43
44
45
46
47
48

/**
 * @class OFNotification OFNotification.h ObjFW/OFNotification.h
 *
 * @brief A class to represent a notification for or from
 *	  @ref OFNotificationCenter.
 */
OF_SUBCLASSING_RESTRICTED
@interface OFNotification: OFObject <OFCopying>
{
	OFNotificationName _name;
	id _Nullable _object;
	OFDictionary *_Nullable _userInfo;

}

/**
 * @brief The name of the notification.
 */
@property (readonly, nonatomic) OFNotificationName name;








<





>







29
30
31
32
33
34
35

36
37
38
39
40
41
42
43
44
45
46
47
48

/**
 * @class OFNotification OFNotification.h ObjFW/OFNotification.h
 *
 * @brief A class to represent a notification for or from
 *	  @ref OFNotificationCenter.
 */

@interface OFNotification: OFObject <OFCopying>
{
	OFNotificationName _name;
	id _Nullable _object;
	OFDictionary *_Nullable _userInfo;
	OF_RESERVE_IVARS(OFNotification, 4)
}

/**
 * @brief The name of the notification.
 */
@property (readonly, nonatomic) OFNotificationName name;

Modified src/OFNotificationCenter.h from [6d89a35135] to [2edf55e2db].

35
36
37
38
39
40
41



42
43
44
45
46
47
48
49
50
51
52
53
54
55

/**
 * @class OFNotificationCenter OFNotificationCenter.h \
 *	  ObjFW/OFNotificationCenter.h
 *
 * @brief A class to send and register for notifications.
 */



@interface OFNotificationCenter: OFObject
{
#ifdef OF_HAVE_THREADS
	OFMutex *_mutex;
#endif
	OFMutableDictionary *_handles;
	OF_RESERVE_IVARS(OFNotificationCenter, 4)
}

#ifdef OF_HAVE_CLASS_PROPERTIES
@property (class, readonly, nonatomic) OFNotificationCenter *defaultCenter;
#endif

/**







>
>
>






<







35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50

51
52
53
54
55
56
57

/**
 * @class OFNotificationCenter OFNotificationCenter.h \
 *	  ObjFW/OFNotificationCenter.h
 *
 * @brief A class to send and register for notifications.
 */
#ifndef OF_NOTIFICATION_CENTER_M
OF_SUBCLASSING_RESTRICTED
#endif
@interface OFNotificationCenter: OFObject
{
#ifdef OF_HAVE_THREADS
	OFMutex *_mutex;
#endif
	OFMutableDictionary *_handles;

}

#ifdef OF_HAVE_CLASS_PROPERTIES
@property (class, readonly, nonatomic) OFNotificationCenter *defaultCenter;
#endif

/**

Modified src/OFNotificationCenter.m from [3332a25cc3] to [a7b0a81fd8].

8
9
10
11
12
13
14


15
16
17
18
19
20
21
 * 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.
 */



#include "config.h"

#import "OFNotificationCenter.h"
#import "OFArray.h"
#import "OFDictionary.h"
#ifdef OF_HAVE_THREADS







>
>







8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 * 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.
 */

#define OF_NOTIFICATION_CENTER_M

#include "config.h"

#import "OFNotificationCenter.h"
#import "OFArray.h"
#import "OFDictionary.h"
#ifdef OF_HAVE_THREADS

Modified src/OFRecursiveMutex.h from [5662e5ef58] to [b2370c565d].

27
28
29
30
31
32
33

34
35
36
37
38
39
40
41
42
43
44
 */
OF_SUBCLASSING_RESTRICTED
@interface OFRecursiveMutex: OFObject <OFLocking>
{
	OFPlainRecursiveMutex _rmutex;
	bool _initialized;
	OFString *_Nullable _name;

}

/**
 * @brief Creates a new recursive mutex.
 *
 * @return A new autoreleased recursive mutex.
 */
+ (instancetype)mutex;
@end

OF_ASSUME_NONNULL_END







>











27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
 */
OF_SUBCLASSING_RESTRICTED
@interface OFRecursiveMutex: OFObject <OFLocking>
{
	OFPlainRecursiveMutex _rmutex;
	bool _initialized;
	OFString *_Nullable _name;
	OF_RESERVE_IVARS(OFRecursiveMutex, 4)
}

/**
 * @brief Creates a new recursive mutex.
 *
 * @return A new autoreleased recursive mutex.
 */
+ (instancetype)mutex;
@end

OF_ASSUME_NONNULL_END

Modified src/OFSPXStreamSocket.h from [b5f5c82a33] to [273c44a2b3].

65
66
67
68
69
70
71
72
73




74
75
76
77
78
79
80
 *
 * @note If you want to use SPX in message mode instead of in streaming mode,
 *	 use @ref OFSPXSocket instead.
 *
 * To connect to a server, create a socket and connect it.
 * To create a server, create a socket, bind it and listen on it.
 */
OF_SUBCLASSING_RESTRICTED
@interface OFSPXStreamSocket: OFStreamSocket




/**
 * @brief The delegate for asynchronous operations on the socket.
 *
 * @note The delegate is retained for as long as asynchronous operations are
 *	 still ongoing.
 */
@property OF_NULLABLE_PROPERTY (assign, nonatomic)







<

>
>
>
>







65
66
67
68
69
70
71

72
73
74
75
76
77
78
79
80
81
82
83
 *
 * @note If you want to use SPX in message mode instead of in streaming mode,
 *	 use @ref OFSPXSocket instead.
 *
 * To connect to a server, create a socket and connect it.
 * To create a server, create a socket, bind it and listen on it.
 */

@interface OFSPXStreamSocket: OFStreamSocket
{
	OF_RESERVE_IVARS(OFSPXStreamSocket, 4)
}

/**
 * @brief The delegate for asynchronous operations on the socket.
 *
 * @note The delegate is retained for as long as asynchronous operations are
 *	 still ongoing.
 */
@property OF_NULLABLE_PROPERTY (assign, nonatomic)

Modified src/exceptions/OFAcceptFailedException.h from [257583a910] to [af9482eaa0].

27
28
29
30
31
32
33

34
35
36
37
38
39
40
 *
 * @brief An exception indicating that accepting a connection failed.
 */
@interface OFAcceptFailedException: OFException
{
	id _socket;
	int _errNo;

}

/**
 * @brief The socket which could not accept a connection.
 */
@property (readonly, nonatomic) id socket;








>







27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
 *
 * @brief An exception indicating that accepting a connection failed.
 */
@interface OFAcceptFailedException: OFException
{
	id _socket;
	int _errNo;
	OF_RESERVE_IVARS(OFAcceptFailedException, 4)
}

/**
 * @brief The socket which could not accept a connection.
 */
@property (readonly, nonatomic) id socket;

Modified src/exceptions/OFAllocFailedException.h from [89360977c8] to [01cde7dcb3].

30
31
32
33
34
35
36

37
38
39
40
41
42
43
44
45
46
47
48
49
 * it.
 *
 * This is the only exception which is not an OFException as it's special. It
 * does not know for which class allocation failed and it should not be handled
 * like other exceptions, as the exception handling code is not allowed to
 * allocate *any* memory.
 */

@interface OFAllocFailedException: OFObject
+ (instancetype)exception OF_UNAVAILABLE;
- (instancetype)init OF_UNAVAILABLE;

/**
 * @brief Returns a description of the exception.
 *
 * @return A description of the exception
 */
- (OFString *)description;
@end

OF_ASSUME_NONNULL_END







>













30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
 * it.
 *
 * This is the only exception which is not an OFException as it's special. It
 * does not know for which class allocation failed and it should not be handled
 * like other exceptions, as the exception handling code is not allowed to
 * allocate *any* memory.
 */
OF_SUBCLASSING_RESTRICTED
@interface OFAllocFailedException: OFObject
+ (instancetype)exception OF_UNAVAILABLE;
- (instancetype)init OF_UNAVAILABLE;

/**
 * @brief Returns a description of the exception.
 *
 * @return A description of the exception
 */
- (OFString *)description;
@end

OF_ASSUME_NONNULL_END

Modified src/exceptions/OFAlreadyConnectedException.h from [56f0934858] to [ac208c2ef2].

27
28
29
30
31
32
33

34
35
36
37
38
39
40
 *
 * @brief An exception indicating an attempt to connect or bind an already
 *        connected or bound socket.
 */
@interface OFAlreadyConnectedException: OFException
{
	id _socket;

}

/**
 * @brief The socket which is already connected.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) id socket;








>







27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
 *
 * @brief An exception indicating an attempt to connect or bind an already
 *        connected or bound socket.
 */
@interface OFAlreadyConnectedException: OFException
{
	id _socket;
	OF_RESERVE_IVARS(OFAlreadyConnectedException, 4)
}

/**
 * @brief The socket which is already connected.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) id socket;

Modified src/exceptions/OFBindFailedException.h from [5fb5dee342] to [9447c1c83e].

36
37
38
39
40
41
42

43
44
45
46
47
48
49
	uint16_t _port;
	/* IPX */
	uint8_t _packetType;
	/* UNIX socket */
	OFString *_Nullable _path;
	id _socket;
	int _errNo;

}

/**
 * @brief The host on which binding failed.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFString *host;








>







36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
	uint16_t _port;
	/* IPX */
	uint8_t _packetType;
	/* UNIX socket */
	OFString *_Nullable _path;
	id _socket;
	int _errNo;
	OF_RESERVE_IVARS(OFBindFailedException, 4)
}

/**
 * @brief The host on which binding failed.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFString *host;

Modified src/exceptions/OFChangeCurrentDirectoryPathFailedException.h from [fce19a8f8b] to [0196a16f5d].

25
26
27
28
29
30
31

32
33
34
35
36
37
38
 * @brief An exception indicating that changing the current directory path
 *	  failed.
 */
@interface OFChangeCurrentDirectoryPathFailedException: OFException
{
	OFString *_path;
	int _errNo;

}

/**
 * @brief The path of the directory to which the current path could not be
 *	  changed.
 */
@property (readonly, nonatomic) OFString *path;







>







25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 * @brief An exception indicating that changing the current directory path
 *	  failed.
 */
@interface OFChangeCurrentDirectoryPathFailedException: OFException
{
	OFString *_path;
	int _errNo;
	OF_RESERVE_IVARS(OFChangeCurrentDirectoryPathFailedException, 4)
}

/**
 * @brief The path of the directory to which the current path could not be
 *	  changed.
 */
@property (readonly, nonatomic) OFString *path;

Modified src/exceptions/OFChecksumMismatchException.h from [e6f142cd8f] to [5d6d269610].

22
23
24
25
26
27
28

29
30
31
32
33
34
35
 *	  OFChecksumMismatchException.h ObjFW/OFChecksumMismatchException.h
 *
 * @brief An exception indicating that a checksum did not match.
 */
@interface OFChecksumMismatchException: OFException
{
	OFString *_actualChecksum, *_expectedChecksum;

}

/**
 * @brief The actual checksum calculated.
 */
@property (readonly, nonatomic) OFString *actualChecksum;








>







22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 *	  OFChecksumMismatchException.h ObjFW/OFChecksumMismatchException.h
 *
 * @brief An exception indicating that a checksum did not match.
 */
@interface OFChecksumMismatchException: OFException
{
	OFString *_actualChecksum, *_expectedChecksum;
	OF_RESERVE_IVARS(OFChecksumMismatchException, 4)
}

/**
 * @brief The actual checksum calculated.
 */
@property (readonly, nonatomic) OFString *actualChecksum;

Modified src/exceptions/OFConditionBroadcastFailedException.h from [d2d182c69d] to [920b114a94].

30
31
32
33
34
35
36

37
38
39
40
41
42
43
 *
 * @brief An exception indicating broadcasting a condition failed.
 */
@interface OFConditionBroadcastFailedException: OFException
{
	OFCondition *_condition;
	int _errNo;

}

/**
 * @brief The condition which could not be broadcasted.
 */
@property (readonly, nonatomic) OFCondition *condition;








>







30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
 *
 * @brief An exception indicating broadcasting a condition failed.
 */
@interface OFConditionBroadcastFailedException: OFException
{
	OFCondition *_condition;
	int _errNo;
	OF_RESERVE_IVARS(OFConditionBroadcastFailedException, 4)
}

/**
 * @brief The condition which could not be broadcasted.
 */
@property (readonly, nonatomic) OFCondition *condition;

Modified src/exceptions/OFConditionSignalFailedException.h from [92e2796a89] to [fd45072644].

30
31
32
33
34
35
36

37
38
39
40
41
42
43
 *
 * @brief An exception indicating signaling a condition failed.
 */
@interface OFConditionSignalFailedException: OFException
{
	OFCondition *_condition;
	int _errNo;

}

/**
 * @brief The condition which could not be signaled.
 */
@property (readonly, nonatomic) OFCondition *condition;








>







30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
 *
 * @brief An exception indicating signaling a condition failed.
 */
@interface OFConditionSignalFailedException: OFException
{
	OFCondition *_condition;
	int _errNo;
	OF_RESERVE_IVARS(OFConditionSignalFailedException, 4)
}

/**
 * @brief The condition which could not be signaled.
 */
@property (readonly, nonatomic) OFCondition *condition;

Modified src/exceptions/OFConditionStillWaitingException.h from [63592271b5] to [6424437193].

30
31
32
33
34
35
36

37
38
39
40
41
42
43
 *
 * @brief An exception indicating that a thread is still waiting for a
 *	  condition.
 */
@interface OFConditionStillWaitingException: OFException
{
	OFCondition *_condition;

}

/**
 * @brief The condition for which is still being waited.
 */
@property (readonly, nonatomic) OFCondition *condition;








>







30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
 *
 * @brief An exception indicating that a thread is still waiting for a
 *	  condition.
 */
@interface OFConditionStillWaitingException: OFException
{
	OFCondition *_condition;
	OF_RESERVE_IVARS(OFConditionStillWaitingException, 4)
}

/**
 * @brief The condition for which is still being waited.
 */
@property (readonly, nonatomic) OFCondition *condition;

Modified src/exceptions/OFConditionWaitFailedException.h from [4c780f1cdc] to [219a53d1c9].

30
31
32
33
34
35
36

37
38
39
40
41
42
43
 *
 * @brief An exception indicating waiting for a condition failed.
 */
@interface OFConditionWaitFailedException: OFException
{
	OFCondition *_condition;
	int _errNo;

}

/**
 * @brief The condition for which could not be waited.
 */
@property (readonly, nonatomic) OFCondition *condition;








>







30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
 *
 * @brief An exception indicating waiting for a condition failed.
 */
@interface OFConditionWaitFailedException: OFException
{
	OFCondition *_condition;
	int _errNo;
	OF_RESERVE_IVARS(OFConditionWaitFailedException, 4)
}

/**
 * @brief The condition for which could not be waited.
 */
@property (readonly, nonatomic) OFCondition *condition;

Modified src/exceptions/OFConnectionFailedException.h from [6f75d86327] to [3f23880b21].

34
35
36
37
38
39
40

41
42
43
44
45
46
47
	OFString *_Nullable _host;
	uint16_t _port;
	OFString *_Nullable _path;
	uint32_t _network;
	unsigned char _node[IPX_NODE_LEN];
	id _socket;
	int _errNo;

}

/**
 * @brief The host to which the connection failed.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFString *host;








>







34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
	OFString *_Nullable _host;
	uint16_t _port;
	OFString *_Nullable _path;
	uint32_t _network;
	unsigned char _node[IPX_NODE_LEN];
	id _socket;
	int _errNo;
	OF_RESERVE_IVARS(OFConnectionFailedException, 4)
}

/**
 * @brief The host to which the connection failed.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFString *host;

Modified src/exceptions/OFCopyItemFailedException.h from [6dbfc6ae6a] to [630315f2f6].

25
26
27
28
29
30
31

32
33
34
35
36
37
38
 *
 * @brief An exception indicating that copying a item failed.
 */
@interface OFCopyItemFailedException: OFException
{
	OFURL *_sourceURL, *_destinationURL;
	int _errNo;

}

/**
 * @brief The URL of the source item.
 */
@property (readonly, nonatomic) OFURL *sourceURL;








>







25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 *
 * @brief An exception indicating that copying a item failed.
 */
@interface OFCopyItemFailedException: OFException
{
	OFURL *_sourceURL, *_destinationURL;
	int _errNo;
	OF_RESERVE_IVARS(OFCopyItemFailedException, 4)
}

/**
 * @brief The URL of the source item.
 */
@property (readonly, nonatomic) OFURL *sourceURL;

Modified src/exceptions/OFCreateDirectoryFailedException.h from [9fb2f6c383] to [f204a4e512].

26
27
28
29
30
31
32

33
34
35
36
37
38
39
 *
 * @brief An exception indicating a directory couldn't be created.
 */
@interface OFCreateDirectoryFailedException: OFException
{
	OFURL *_URL;
	int _errNo;

}

/**
 * @brief The URL of the directory which couldn't be created.
 */
@property (readonly, nonatomic) OFURL *URL;








>







26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 *
 * @brief An exception indicating a directory couldn't be created.
 */
@interface OFCreateDirectoryFailedException: OFException
{
	OFURL *_URL;
	int _errNo;
	OF_RESERVE_IVARS(OFCreateDirectoryFailedException, 4)
}

/**
 * @brief The URL of the directory which couldn't be created.
 */
@property (readonly, nonatomic) OFURL *URL;

Modified src/exceptions/OFCreateSymbolicLinkFailedException.h from [3600a35794] to [200bfbec91].

27
28
29
30
31
32
33

34
35
36
37
38
39
40
 * @brief An exception indicating that creating a symbolic link failed.
 */
@interface OFCreateSymbolicLinkFailedException: OFException
{
	OFURL *_URL;
	OFString *_target;
	int _errNo;

}

/**
 * @brief The URL at which the symlink should have been created.
 */
@property (readonly, nonatomic) OFURL *URL;








>







27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
 * @brief An exception indicating that creating a symbolic link failed.
 */
@interface OFCreateSymbolicLinkFailedException: OFException
{
	OFURL *_URL;
	OFString *_target;
	int _errNo;
	OF_RESERVE_IVARS(OFCreateSymbolicLinkFailedException, 4)
}

/**
 * @brief The URL at which the symlink should have been created.
 */
@property (readonly, nonatomic) OFURL *URL;

Modified src/exceptions/OFCreateWindowsRegistryKeyFailedException.h from [10755ff9ec] to [3739e39dc2].

31
32
33
34
35
36
37

38
39
40
41
42
43
44
{
	OFWindowsRegistryKey *_registryKey;
	OFString *_path;
	DWORD _options;
	REGSAM _accessRights;
	LPSECURITY_ATTRIBUTES _Nullable _securityAttributes;
	LSTATUS _status;

}

/**
 * @brief The registry key on which creating the subkey failed.
 */
@property (readonly, nonatomic) OFWindowsRegistryKey *registryKey;








>







31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
{
	OFWindowsRegistryKey *_registryKey;
	OFString *_path;
	DWORD _options;
	REGSAM _accessRights;
	LPSECURITY_ATTRIBUTES _Nullable _securityAttributes;
	LSTATUS _status;
	OF_RESERVE_IVARS(OFCreateWindowsRegistryKeyFailedException, 4)
}

/**
 * @brief The registry key on which creating the subkey failed.
 */
@property (readonly, nonatomic) OFWindowsRegistryKey *registryKey;

Modified src/exceptions/OFDNSQueryFailedException.h from [852291054a] to [e0cf12b730].

26
27
28
29
30
31
32

33
34
35
36
37
38
39
 *
 * @brief An exception indicating that a DNS query failed.
 */
@interface OFDNSQueryFailedException: OFException
{
	OFDNSQuery *_query;
	OFDNSResolverErrorCode _errorCode;

}

/**
 * @brief The query which could not be performed.
 */
@property (readonly, nonatomic) OFDNSQuery *query;








>







26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 *
 * @brief An exception indicating that a DNS query failed.
 */
@interface OFDNSQueryFailedException: OFException
{
	OFDNSQuery *_query;
	OFDNSResolverErrorCode _errorCode;
	OF_RESERVE_IVARS(OFDNSQueryFailedException, 4)
}

/**
 * @brief The query which could not be performed.
 */
@property (readonly, nonatomic) OFDNSQuery *query;

Modified src/exceptions/OFDeleteWindowsRegistryKeyFailedException.h from [ce80a5fb98] to [7a006ec7b5].

28
29
30
31
32
33
34

35
36
37
38
39
40
41
 * @brief An exception indicating that deleting a Windows registry key failed.
 */
@interface OFDeleteWindowsRegistryKeyFailedException: OFException
{
	OFWindowsRegistryKey *_registryKey;
	OFString *_subkeyPath;
	LSTATUS _status;

}

/**
 * @brief The registry key on which deleting the subkey failed.
 */
@property (readonly, nonatomic) OFWindowsRegistryKey *registryKey;








>







28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
 * @brief An exception indicating that deleting a Windows registry key failed.
 */
@interface OFDeleteWindowsRegistryKeyFailedException: OFException
{
	OFWindowsRegistryKey *_registryKey;
	OFString *_subkeyPath;
	LSTATUS _status;
	OF_RESERVE_IVARS(OFDeleteWindowsRegistryKeyFailedException, 4)
}

/**
 * @brief The registry key on which deleting the subkey failed.
 */
@property (readonly, nonatomic) OFWindowsRegistryKey *registryKey;

Modified src/exceptions/OFDeleteWindowsRegistryValueFailedException.h from [fb187a24ce] to [0a7f480a16].

28
29
30
31
32
33
34

35
36
37
38
39
40
41
 * @brief An exception indicating that deleting a Windows registry value failed.
 */
@interface OFDeleteWindowsRegistryValueFailedException: OFException
{
	OFWindowsRegistryKey *_registryKey;
	OFString *_Nullable _valueName;
	LSTATUS _status;

}

/**
 * @brief The registry key on which deleting the value failed.
 */
@property (readonly, nonatomic) OFWindowsRegistryKey *registryKey;








>







28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
 * @brief An exception indicating that deleting a Windows registry value failed.
 */
@interface OFDeleteWindowsRegistryValueFailedException: OFException
{
	OFWindowsRegistryKey *_registryKey;
	OFString *_Nullable _valueName;
	LSTATUS _status;
	OF_RESERVE_IVARS(OFDeleteWindowsRegistryValueFailedException, 4)
}

/**
 * @brief The registry key on which deleting the value failed.
 */
@property (readonly, nonatomic) OFWindowsRegistryKey *registryKey;

Modified src/exceptions/OFEnumerationMutationException.h from [2ab98f2cf4] to [1a130e7399].

24
25
26
27
28
29
30

31
32
33
34
35
36
37
 *
 * @brief An exception indicating that a mutation was detected during
 *        enumeration.
 */
@interface OFEnumerationMutationException: OFException
{
	id _object;

}

/**
 * @brief The object which was mutated during enumeration.
 */
@property (readonly, nonatomic) id object;








>







24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
 *
 * @brief An exception indicating that a mutation was detected during
 *        enumeration.
 */
@interface OFEnumerationMutationException: OFException
{
	id _object;
	OF_RESERVE_IVARS(OFEnumerationMutationException, 4)
}

/**
 * @brief The object which was mutated during enumeration.
 */
@property (readonly, nonatomic) id object;

Modified src/exceptions/OFException.h from [e8334cf8f9] to [6d2e250849].

146
147
148
149
150
151
152

153
154
155
156
157
158
159
 *
 * The OFException class is the base class for all exceptions in ObjFW, except
 * the OFAllocFailedException.
 */
@interface OFException: OFObject
{
	void *_backtrace[OFBacktraceSize];

}

/**
 * @brief Creates a new, autoreleased exception.
 *
 * @return A new, autoreleased exception
 */







>







146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
 *
 * The OFException class is the base class for all exceptions in ObjFW, except
 * the OFAllocFailedException.
 */
@interface OFException: OFObject
{
	void *_backtrace[OFBacktraceSize];
	OF_RESERVE_IVARS(OFException, 4)
}

/**
 * @brief Creates a new, autoreleased exception.
 *
 * @return A new, autoreleased exception
 */

Modified src/exceptions/OFGetCurrentDirectoryPathFailedException.h from [8e5eb876c7] to [30be5f43f5].

24
25
26
27
28
29
30

31
32
33
34
35
36
37
 *
 * @brief An exception indicating that getting the current directory path
 *	  failed.
 */
@interface OFGetCurrentDirectoryPathFailedException: OFException
{
	int _errNo;

}

/**
 * @brief The errno of the error that occurred.
 */
@property (readonly, nonatomic) int errNo;








>







24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
 *
 * @brief An exception indicating that getting the current directory path
 *	  failed.
 */
@interface OFGetCurrentDirectoryPathFailedException: OFException
{
	int _errNo;
	OF_RESERVE_IVARS(OFGetCurrentDirectoryPathFailedException, 4)
}

/**
 * @brief The errno of the error that occurred.
 */
@property (readonly, nonatomic) int errNo;

Modified src/exceptions/OFGetOptionFailedException.h from [07bdd97238] to [a8c8d533b3].

23
24
25
26
27
28
29

30
31
32
33
34
35
36
 *
 * @brief An exception indicating that getting an option for an object failed.
 */
@interface OFGetOptionFailedException: OFException
{
	id _object;
	int _errNo;

}

/**
 * @brief The object for which the option could not be retrieved.
 */
@property (readonly, nonatomic) id object;








>







23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
 *
 * @brief An exception indicating that getting an option for an object failed.
 */
@interface OFGetOptionFailedException: OFException
{
	id _object;
	int _errNo;
	OF_RESERVE_IVARS(OFGetOptionFailedException, 4)
}

/**
 * @brief The object for which the option could not be retrieved.
 */
@property (readonly, nonatomic) id object;

Modified src/exceptions/OFGetWindowsRegistryValueFailedException.h from [15ecc19a56] to [1bae299028].

28
29
30
31
32
33
34

35
36
37
38
39
40
41
 * @brief An exception indicating that getting a Windows registry value failed.
 */
@interface OFGetWindowsRegistryValueFailedException: OFException
{
	OFWindowsRegistryKey *_registryKey;
	OFString *_Nullable _valueName;
	LSTATUS _status;

}

/**
 * @brief The registry key on which getting the value at the key path failed.
 */
@property (readonly, nonatomic) OFWindowsRegistryKey *registryKey;








>







28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
 * @brief An exception indicating that getting a Windows registry value failed.
 */
@interface OFGetWindowsRegistryValueFailedException: OFException
{
	OFWindowsRegistryKey *_registryKey;
	OFString *_Nullable _valueName;
	LSTATUS _status;
	OF_RESERVE_IVARS(OFGetWindowsRegistryValueFailedException, 4)
}

/**
 * @brief The registry key on which getting the value at the key path failed.
 */
@property (readonly, nonatomic) OFWindowsRegistryKey *registryKey;

Modified src/exceptions/OFHTTPRequestFailedException.h from [59803d0bef] to [d5947528d2].

31
32
33
34
35
36
37

38
39
40
41
42
43
44
 *
 * @brief An exception indicating that an HTTP request failed.
 */
@interface OFHTTPRequestFailedException: OFException
{
	OFHTTPRequest *_request;
	OFHTTPResponse *_response;

}

/**
 * @brief The HTTP request which failed.
 */
@property (readonly, nonatomic) OFHTTPRequest *request;








>







31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
 *
 * @brief An exception indicating that an HTTP request failed.
 */
@interface OFHTTPRequestFailedException: OFException
{
	OFHTTPRequest *_request;
	OFHTTPResponse *_response;
	OF_RESERVE_IVARS(OFHTTPRequestFailedException, 4)
}

/**
 * @brief The HTTP request which failed.
 */
@property (readonly, nonatomic) OFHTTPRequest *request;

Modified src/exceptions/OFHashAlreadyCalculatedException.h from [9fce34d334] to [0455e7b89e].

23
24
25
26
27
28
29

30
31
32
33
34
35
36
 *	  ObjFW/OFHashAlreadyCalculatedException.h
 *
 * @brief An exception indicating that the hash has already been calculated.
 */
@interface OFHashAlreadyCalculatedException: OFException
{
	id _object;

}

/**
 * @brief The hash which has already been calculated.
 */
@property (readonly, nonatomic) id object;








>







23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
 *	  ObjFW/OFHashAlreadyCalculatedException.h
 *
 * @brief An exception indicating that the hash has already been calculated.
 */
@interface OFHashAlreadyCalculatedException: OFException
{
	id _object;
	OF_RESERVE_IVARS(OFHashAlreadyCalculatedException, 4)
}

/**
 * @brief The hash which has already been calculated.
 */
@property (readonly, nonatomic) id object;

Modified src/exceptions/OFHashNotCalculatedException.h from [768ce1b6b5] to [e76b9886eb].

22
23
24
25
26
27
28

29
30
31
32
33
34
35
 *	  ObjFW/OFHashNotCalculatedException.h
 *
 * @brief An exception indicating that the hash has not been calculated yet.
 */
@interface OFHashNotCalculatedException: OFException
{
	id _object;

}

/**
 * @brief The hash which has not been calculated yet.
 */
@property (readonly, nonatomic) id object;








>







22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 *	  ObjFW/OFHashNotCalculatedException.h
 *
 * @brief An exception indicating that the hash has not been calculated yet.
 */
@interface OFHashNotCalculatedException: OFException
{
	id _object;
	OF_RESERVE_IVARS(OFHashNotCalculatedException, 4)
}

/**
 * @brief The hash which has not been calculated yet.
 */
@property (readonly, nonatomic) id object;

Modified src/exceptions/OFInitializationFailedException.h from [20206324fd] to [280997dfe1].

23
24
25
26
27
28
29

30
31
32
33
34
35
36
 *	  ObjFW/OFInitializationFailedException.h
 *
 * @brief An exception indicating that initializing something failed.
 */
@interface OFInitializationFailedException: OFException
{
	Class _inClass;

}

/**
 * @brief The class for which initialization failed.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) Class inClass;








>







23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
 *	  ObjFW/OFInitializationFailedException.h
 *
 * @brief An exception indicating that initializing something failed.
 */
@interface OFInitializationFailedException: OFException
{
	Class _inClass;
	OF_RESERVE_IVARS(OFInitializationFailedException, 4)
}

/**
 * @brief The class for which initialization failed.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) Class inClass;

Modified src/exceptions/OFInvalidArgumentException.h from [d5e2417590] to [835c000126].

20
21
22
23
24
25
26



27
28
29
/**
 * @class OFInvalidArgumentException \
 *	  OFInvalidArgumentException.h ObjFW/OFInvalidArgumentException.h
 *
 * @brief An exception indicating that the argument is invalid for this method.
 */
@interface OFInvalidArgumentException: OFException



@end

OF_ASSUME_NONNULL_END







>
>
>



20
21
22
23
24
25
26
27
28
29
30
31
32
/**
 * @class OFInvalidArgumentException \
 *	  OFInvalidArgumentException.h ObjFW/OFInvalidArgumentException.h
 *
 * @brief An exception indicating that the argument is invalid for this method.
 */
@interface OFInvalidArgumentException: OFException
{
	OF_RESERVE_IVARS(OFInvalidArgumentException, 4)
}
@end

OF_ASSUME_NONNULL_END

Modified src/exceptions/OFInvalidEncodingException.h from [393547809a] to [36e737e07d].

20
21
22
23
24
25
26



27
28
29
/**
 * @class OFInvalidEncodingException \
 *	  OFInvalidEncodingException.h ObjFW/OFInvalidEncodingException.h
 *
 * @brief An exception indicating that the encoding is invalid for this object.
 */
@interface OFInvalidEncodingException: OFException



@end

OF_ASSUME_NONNULL_END







>
>
>



20
21
22
23
24
25
26
27
28
29
30
31
32
/**
 * @class OFInvalidEncodingException \
 *	  OFInvalidEncodingException.h ObjFW/OFInvalidEncodingException.h
 *
 * @brief An exception indicating that the encoding is invalid for this object.
 */
@interface OFInvalidEncodingException: OFException
{
	OF_RESERVE_IVARS(OFInvalidEncodingException, 4)
}
@end

OF_ASSUME_NONNULL_END

Modified src/exceptions/OFInvalidFormatException.h from [e6f46ae68c] to [7bd0078c9f].

20
21
22
23
24
25
26



27
28
29
/**
 * @class OFInvalidFormatException \
 *	  OFInvalidFormatException.h ObjFW/OFInvalidFormatException.h
 *
 * @brief An exception indicating that the format is invalid.
 */
@interface OFInvalidFormatException: OFException



@end

OF_ASSUME_NONNULL_END







>
>
>



20
21
22
23
24
25
26
27
28
29
30
31
32
/**
 * @class OFInvalidFormatException \
 *	  OFInvalidFormatException.h ObjFW/OFInvalidFormatException.h
 *
 * @brief An exception indicating that the format is invalid.
 */
@interface OFInvalidFormatException: OFException
{
	OF_RESERVE_IVARS(OFInvalidFormatException, 4)
}
@end

OF_ASSUME_NONNULL_END

Modified src/exceptions/OFInvalidJSONException.h from [9ac94f6e36] to [a9bef800fe].

23
24
25
26
27
28
29

30
31
32
33
34
35
36
 *
 * @brief An exception indicating a JSON representation is invalid.
 */
@interface OFInvalidJSONException: OFException
{
	OFString *_string;
	size_t _line;

}

/**
 * @brief The string containing the invalid JSON representation.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFString *string;








>







23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
 *
 * @brief An exception indicating a JSON representation is invalid.
 */
@interface OFInvalidJSONException: OFException
{
	OFString *_string;
	size_t _line;
	OF_RESERVE_IVARS(OFInvalidJSONException, 4)
}

/**
 * @brief The string containing the invalid JSON representation.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFString *string;

Modified src/exceptions/OFInvalidServerReplyException.h from [90e12ae8cf] to [9b346b811a].

20
21
22
23
24
25
26



27
28
29
/**
 * @class OFInvalidServerReplyException \
 *	  OFInvalidServerReplyException.h ObjFW/OFInvalidServerReplyException.h
 *
 * @brief An exception indicating that the server sent an invalid reply.
 */
@interface OFInvalidServerReplyException: OFException



@end

OF_ASSUME_NONNULL_END







>
>
>



20
21
22
23
24
25
26
27
28
29
30
31
32
/**
 * @class OFInvalidServerReplyException \
 *	  OFInvalidServerReplyException.h ObjFW/OFInvalidServerReplyException.h
 *
 * @brief An exception indicating that the server sent an invalid reply.
 */
@interface OFInvalidServerReplyException: OFException
{
	OF_RESERVE_IVARS(OFInvalidServerReplyException, 4)
}
@end

OF_ASSUME_NONNULL_END

Modified src/exceptions/OFLinkFailedException.h from [099d3c2419] to [d8c1abe3a6].

25
26
27
28
29
30
31

32
33
34
35
36
37
38
 *
 * @brief An exception indicating that creating a link failed.
 */
@interface OFLinkFailedException: OFException
{
	OFURL *_sourceURL, *_destinationURL;
	int _errNo;

}

/**
 * @brief A URL with the source for the link.
 */
@property (readonly, nonatomic) OFURL *sourceURL;








>







25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 *
 * @brief An exception indicating that creating a link failed.
 */
@interface OFLinkFailedException: OFException
{
	OFURL *_sourceURL, *_destinationURL;
	int _errNo;
	OF_RESERVE_IVARS(OFLinkFailedException, 4)
}

/**
 * @brief A URL with the source for the link.
 */
@property (readonly, nonatomic) OFURL *sourceURL;

Modified src/exceptions/OFListenFailedException.h from [32d4375802] to [a41aaff3ca].

27
28
29
30
31
32
33

34
35
36
37
38
39
40
 *
 * @brief An exception indicating that listening on the socket failed.
 */
@interface OFListenFailedException: OFException
{
	id _socket;
	int _backlog, _errNo;

}

/**
 * @brief The socket which failed to listen.
 */
@property (readonly, nonatomic) id socket;








>







27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
 *
 * @brief An exception indicating that listening on the socket failed.
 */
@interface OFListenFailedException: OFException
{
	id _socket;
	int _backlog, _errNo;
	OF_RESERVE_IVARS(OFListenFailedException, 4)
}

/**
 * @brief The socket which failed to listen.
 */
@property (readonly, nonatomic) id socket;

Modified src/exceptions/OFLoadPluginFailedException.h from [7c45470186] to [bb70233a5c].

22
23
24
25
26
27
28

29
30
31
32
33
34
35
 *	  OFLoadPluginFailedException.h ObjFW/OFLoadPluginFailedException.h
 *
 * @brief An exception indicating a plugin could not be loaded.
 */
@interface OFLoadPluginFailedException: OFException
{
	OFString *_path, *_Nullable _error;

}

/**
 * @brief The path of the plugin which could not be loaded
 */
@property (readonly, nonatomic) OFString *path;








>







22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 *	  OFLoadPluginFailedException.h ObjFW/OFLoadPluginFailedException.h
 *
 * @brief An exception indicating a plugin could not be loaded.
 */
@interface OFLoadPluginFailedException: OFException
{
	OFString *_path, *_Nullable _error;
	OF_RESERVE_IVARS(OFLoadPluginFailedException, 4)
}

/**
 * @brief The path of the plugin which could not be loaded
 */
@property (readonly, nonatomic) OFString *path;

Modified src/exceptions/OFLockFailedException.h from [e861f27ee4] to [58545dfa42].

24
25
26
27
28
29
30

31
32
33
34
35
36
37
 *
 * @brief An exception indicating that locking a lock failed.
 */
@interface OFLockFailedException: OFException
{
	id <OFLocking> _Nullable _lock;
	int _errNo;

}

/**
 * @brief The lock which could not be locked.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) id <OFLocking> lock;








>







24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
 *
 * @brief An exception indicating that locking a lock failed.
 */
@interface OFLockFailedException: OFException
{
	id <OFLocking> _Nullable _lock;
	int _errNo;
	OF_RESERVE_IVARS(OFLockFailedException, 4)
}

/**
 * @brief The lock which could not be locked.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) id <OFLocking> lock;

Modified src/exceptions/OFMalformedXMLException.h from [3b999908e6] to [d319798b44].

24
25
26
27
28
29
30

31
32
33
34
35
36
37
 *	  OFMalformedXMLException.h ObjFW/OFMalformedXMLException.h
 *
 * @brief An exception indicating that a parser encountered malformed XML.
 */
@interface OFMalformedXMLException: OFException
{
	OFXMLParser *_parser;

}

/**
 * @brief The parser which encountered malformed XML.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFXMLParser *parser;








>







24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
 *	  OFMalformedXMLException.h ObjFW/OFMalformedXMLException.h
 *
 * @brief An exception indicating that a parser encountered malformed XML.
 */
@interface OFMalformedXMLException: OFException
{
	OFXMLParser *_parser;
	OF_RESERVE_IVARS(OFMalformedXMLException, 4)
}

/**
 * @brief The parser which encountered malformed XML.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFXMLParser *parser;

Modified src/exceptions/OFMoveItemFailedException.h from [c4c3e18fa9] to [a67998f491].

25
26
27
28
29
30
31

32
33
34
35
36
37
38
 *
 * @brief An exception indicating that moving an item failed.
 */
@interface OFMoveItemFailedException: OFException
{
	OFURL *_sourceURL, *_destinationURL;
	int _errNo;

}

/**
 * @brief The original URL.
 */
@property (readonly, nonatomic) OFURL *sourceURL;








>







25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 *
 * @brief An exception indicating that moving an item failed.
 */
@interface OFMoveItemFailedException: OFException
{
	OFURL *_sourceURL, *_destinationURL;
	int _errNo;
	OF_RESERVE_IVARS(OFMoveItemFailedException, 4)
}

/**
 * @brief The original URL.
 */
@property (readonly, nonatomic) OFURL *sourceURL;

Modified src/exceptions/OFNotImplementedException.h from [891dc14bbc] to [f0426204c4].

24
25
26
27
28
29
30

31
32
33
34
35
36
37
 * @brief An exception indicating that a method or part of it is not
 *        implemented.
 */
@interface OFNotImplementedException: OFException
{
	SEL _selector;
	id _Nullable _object;

}

/**
 * @brief The selector which is not or not fully implemented.
 */
@property (readonly, nonatomic) SEL selector;








>







24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
 * @brief An exception indicating that a method or part of it is not
 *        implemented.
 */
@interface OFNotImplementedException: OFException
{
	SEL _selector;
	id _Nullable _object;
	OF_RESERVE_IVARS(OFNotImplementedException, 4)
}

/**
 * @brief The selector which is not or not fully implemented.
 */
@property (readonly, nonatomic) SEL selector;

Modified src/exceptions/OFNotOpenException.h from [45f02f6f12] to [5a826ad61e].

21
22
23
24
25
26
27

28
29
30
31
32
33
34
 * @class OFNotOpenException OFNotOpenException.h ObjFW/OFNotOpenException.h
 *
 * @brief An exception indicating an object is not open, connected or bound.
 */
@interface OFNotOpenException: OFException
{
	id _object;

}

/**
 * @brief The object which is not open, connected or bound.
 */
@property (readonly, nonatomic) id object;








>







21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 * @class OFNotOpenException OFNotOpenException.h ObjFW/OFNotOpenException.h
 *
 * @brief An exception indicating an object is not open, connected or bound.
 */
@interface OFNotOpenException: OFException
{
	id _object;
	OF_RESERVE_IVARS(OFNotOpenException, 4)
}

/**
 * @brief The object which is not open, connected or bound.
 */
@property (readonly, nonatomic) id object;

Modified src/exceptions/OFObserveFailedException.h from [6c7bf7885c] to [1e54133af2].

25
26
27
28
29
30
31

32
33
34
35
36
37
38
 *
 * @brief An exception indicating that observing failed.
 */
@interface OFObserveFailedException: OFException
{
	OFKernelEventObserver *_observer;
	int _errNo;

}

/**
 * @brief The observer which failed to observe.
 */
@property (readonly, nonatomic) OFKernelEventObserver *observer;








>







25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 *
 * @brief An exception indicating that observing failed.
 */
@interface OFObserveFailedException: OFException
{
	OFKernelEventObserver *_observer;
	int _errNo;
	OF_RESERVE_IVARS(OFObserveFailedException, 4)
}

/**
 * @brief The observer which failed to observe.
 */
@property (readonly, nonatomic) OFKernelEventObserver *observer;

Modified src/exceptions/OFOpenItemFailedException.h from [bf32fbec46] to [eff540d360].

27
28
29
30
31
32
33

34
35
36
37
38
39
40
 */
@interface OFOpenItemFailedException: OFException
{
	OFURL *_Nullable _URL;
	OFString *_Nullable _path;
	OFString *_mode;
	int _errNo;

}

/**
 * @brief The URL of the item which could not be opened.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFURL *URL;








>







27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
 */
@interface OFOpenItemFailedException: OFException
{
	OFURL *_Nullable _URL;
	OFString *_Nullable _path;
	OFString *_mode;
	int _errNo;
	OF_RESERVE_IVARS(OFOpenItemFailedException, 4)
}

/**
 * @brief The URL of the item which could not be opened.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFURL *URL;

Modified src/exceptions/OFOpenWindowsRegistryKeyFailedException.h from [883198f087] to [36fb64cf1a].

31
32
33
34
35
36
37

38
39
40
41
42
43
44
{
	OFWindowsRegistryKey *_registryKey;
	OFString *_path;
	REGSAM _accessRights;
	LPSECURITY_ATTRIBUTES _Nullable _securityAttributes;
	DWORD _options;
	LSTATUS _status;

}

/**
 * @brief The registry key on which opening the subkey failed.
 */
@property (readonly, nonatomic) OFWindowsRegistryKey *registryKey;








>







31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
{
	OFWindowsRegistryKey *_registryKey;
	OFString *_path;
	REGSAM _accessRights;
	LPSECURITY_ATTRIBUTES _Nullable _securityAttributes;
	DWORD _options;
	LSTATUS _status;
	OF_RESERVE_IVARS(OFOpenWindowsRegistryKeyFailedException, 4)
}

/**
 * @brief The registry key on which opening the subkey failed.
 */
@property (readonly, nonatomic) OFWindowsRegistryKey *registryKey;

Modified src/exceptions/OFOutOfMemoryException.h from [a0abc1f6de] to [f5654732f6].

22
23
24
25
26
27
28

29
30
31
32
33
34
35
 *	  OFOutOfMemoryException.h ObjFW/OFOutOfMemoryException.h
 *
 * @brief An exception indicating there is not enough memory available.
 */
@interface OFOutOfMemoryException: OFException
{
	size_t _requestedSize;

}

/**
 * @brief The size of the memory that could not be allocated.
 */
@property (readonly, nonatomic) size_t requestedSize;








>







22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 *	  OFOutOfMemoryException.h ObjFW/OFOutOfMemoryException.h
 *
 * @brief An exception indicating there is not enough memory available.
 */
@interface OFOutOfMemoryException: OFException
{
	size_t _requestedSize;
	OF_RESERVE_IVARS(OFOutOfMemoryException, 4)
}

/**
 * @brief The size of the memory that could not be allocated.
 */
@property (readonly, nonatomic) size_t requestedSize;

Modified src/exceptions/OFOutOfRangeException.h from [ad1a11af88] to [f8a5e124cb].

20
21
22
23
24
25
26



27
28
29
/**
 * @class OFOutOfRangeException \
 *	  OFOutOfRangeException.h ObjFW/OFOutOfRangeException.h
 *
 * @brief An exception indicating the given value is out of range.
 */
@interface OFOutOfRangeException: OFException



@end

OF_ASSUME_NONNULL_END







>
>
>



20
21
22
23
24
25
26
27
28
29
30
31
32
/**
 * @class OFOutOfRangeException \
 *	  OFOutOfRangeException.h ObjFW/OFOutOfRangeException.h
 *
 * @brief An exception indicating the given value is out of range.
 */
@interface OFOutOfRangeException: OFException
{
	OF_RESERVE_IVARS(OFOutOfRangeException, 4)
}
@end

OF_ASSUME_NONNULL_END

Modified src/exceptions/OFReadFailedException.h from [a4ca6ea7be] to [1ab276c5fd].

20
21
22
23
24
25
26



27
28
29
/**
 * @class OFReadFailedException \
 *	  OFReadFailedException.h ObjFW/OFReadFailedException.h
 *
 * @brief An exception indicating that reading from an object failed.
 */
@interface OFReadFailedException: OFReadOrWriteFailedException



@end

OF_ASSUME_NONNULL_END







>
>
>



20
21
22
23
24
25
26
27
28
29
30
31
32
/**
 * @class OFReadFailedException \
 *	  OFReadFailedException.h ObjFW/OFReadFailedException.h
 *
 * @brief An exception indicating that reading from an object failed.
 */
@interface OFReadFailedException: OFReadOrWriteFailedException
{
	OF_RESERVE_IVARS(OFReadFailedException, 4)
}
@end

OF_ASSUME_NONNULL_END

Modified src/exceptions/OFReadOrWriteFailedException.h from [17403f4ccf] to [2c37db7aa0].

25
26
27
28
29
30
31

32
33
34
35
36
37
38
 *	  failed.
 */
@interface OFReadOrWriteFailedException: OFException
{
	id _object;
	size_t _requestedLength;
	int _errNo;

}

/**
 * @brief The stream which caused the read or write failed exception.
 */
@property (readonly, nonatomic) id object;








>







25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 *	  failed.
 */
@interface OFReadOrWriteFailedException: OFException
{
	id _object;
	size_t _requestedLength;
	int _errNo;
	OF_RESERVE_IVARS(OFReadOrWriteFailedException, 4)
}

/**
 * @brief The stream which caused the read or write failed exception.
 */
@property (readonly, nonatomic) id object;

Modified src/exceptions/OFRemoveItemFailedException.h from [c9bfaec2ab] to [60915efe4d].

25
26
27
28
29
30
31

32
33
34
35
36
37
38
 *
 * @brief An exception indicating that removing an item failed.
 */
@interface OFRemoveItemFailedException: OFException
{
	OFURL *_URL;
	int _errNo;

}

/**
 * @brief The URL of the item which could not be removed.
 */
@property (readonly, nonatomic) OFURL *URL;








>







25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 *
 * @brief An exception indicating that removing an item failed.
 */
@interface OFRemoveItemFailedException: OFException
{
	OFURL *_URL;
	int _errNo;
	OF_RESERVE_IVARS(OFRemoveItemFailedException, 4)
}

/**
 * @brief The URL of the item which could not be removed.
 */
@property (readonly, nonatomic) OFURL *URL;

Modified src/exceptions/OFResolveHostFailedException.h from [26d03aec04] to [983add21d8].

25
26
27
28
29
30
31

32
33
34
35
36
37
38
 * @brief An exception indicating that resolving a host failed.
 */
@interface OFResolveHostFailedException: OFException
{
	OFString *_host;
	OFSocketAddressFamily _addressFamily;
	OFDNSResolverErrorCode _errorCode;

}

/**
 * @brief The host which could not be resolved.
 */
@property (readonly, nonatomic) OFString *host;








>







25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 * @brief An exception indicating that resolving a host failed.
 */
@interface OFResolveHostFailedException: OFException
{
	OFString *_host;
	OFSocketAddressFamily _addressFamily;
	OFDNSResolverErrorCode _errorCode;
	OF_RESERVE_IVARS(OFResolveHostFailedException, 4)
}

/**
 * @brief The host which could not be resolved.
 */
@property (readonly, nonatomic) OFString *host;

Modified src/exceptions/OFRetrieveItemAttributesFailedException.h from [2269d1ffef] to [73250e6fb2].

26
27
28
29
30
31
32

33
34
35
36
37
38
39
 *
 * @brief An exception indicating an item's attributes could not be retrieved.
 */
@interface OFRetrieveItemAttributesFailedException: OFException
{
	OFURL *_URL;
	int _errNo;

}

/**
 * @brief The URL of the item whose attributes could not be retrieved.
 */
@property (readonly, nonatomic) OFURL *URL;








>







26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 *
 * @brief An exception indicating an item's attributes could not be retrieved.
 */
@interface OFRetrieveItemAttributesFailedException: OFException
{
	OFURL *_URL;
	int _errNo;
	OF_RESERVE_IVARS(OFRetrieveItemAttributesFailedException, 4)
}

/**
 * @brief The URL of the item whose attributes could not be retrieved.
 */
@property (readonly, nonatomic) OFURL *URL;

Modified src/exceptions/OFSeekFailedException.h from [cc5ff19519] to [2132111c3a].

26
27
28
29
30
31
32

33
34
35
36
37
38
39
 */
@interface OFSeekFailedException: OFException
{
	OFSeekableStream *_stream;
	OFStreamOffset _offset;
	OFSeekWhence _whence;
	int _errNo;

}

/**
 * @brief The stream for which seeking failed.
 */
@property (readonly, nonatomic) OFSeekableStream *stream;








>







26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 */
@interface OFSeekFailedException: OFException
{
	OFSeekableStream *_stream;
	OFStreamOffset _offset;
	OFSeekWhence _whence;
	int _errNo;
	OF_RESERVE_IVARS(OFSeekFailedException, 4)
}

/**
 * @brief The stream for which seeking failed.
 */
@property (readonly, nonatomic) OFSeekableStream *stream;

Modified src/exceptions/OFSetItemAttributesFailedException.h from [40e626240d] to [8ece988d41].

29
30
31
32
33
34
35

36
37
38
39
40
41
42
 */
@interface OFSetItemAttributesFailedException: OFException
{
	OFURL *_URL;
	OFFileAttributes _attributes;
	OFFileAttributeKey _failedAttribute;
	int _errNo;

}

/**
 * @brief The URL of the item whose attributes could not be set.
 */
@property (readonly, nonatomic) OFURL *URL;








>







29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
 */
@interface OFSetItemAttributesFailedException: OFException
{
	OFURL *_URL;
	OFFileAttributes _attributes;
	OFFileAttributeKey _failedAttribute;
	int _errNo;
	OF_RESERVE_IVARS(OFSetItemAttributesFailedException, 4)
}

/**
 * @brief The URL of the item whose attributes could not be set.
 */
@property (readonly, nonatomic) OFURL *URL;

Modified src/exceptions/OFSetOptionFailedException.h from [fd8e9dd895] to [2fa10041b9].

23
24
25
26
27
28
29

30
31
32
33
34
35
36
 *
 * @brief An exception indicating that setting an option for an object failed.
 */
@interface OFSetOptionFailedException: OFException
{
	id _object;
	int _errNo;

}

/**
 * @brief The object for which the option could not be set.
 */
@property (readonly, nonatomic) id object;








>







23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
 *
 * @brief An exception indicating that setting an option for an object failed.
 */
@interface OFSetOptionFailedException: OFException
{
	id _object;
	int _errNo;
	OF_RESERVE_IVARS(OFSetOptionFailedException, 4)
}

/**
 * @brief The object for which the option could not be set.
 */
@property (readonly, nonatomic) id object;

Modified src/exceptions/OFSetWindowsRegistryValueFailedException.h from [881eab26fa] to [88eed12b7b].

30
31
32
33
34
35
36

37
38
39
40
41
42
43
@interface OFSetWindowsRegistryValueFailedException: OFException
{
	OFWindowsRegistryKey *_registryKey;
	OFString *_Nullable _valueName;
	OFData *_Nullable _data;
	DWORD _type;
	LSTATUS _status;

}

/**
 * @brief The registry key on which setting the value failed.
 */
@property (readonly, nonatomic) OFWindowsRegistryKey *registryKey;








>







30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
@interface OFSetWindowsRegistryValueFailedException: OFException
{
	OFWindowsRegistryKey *_registryKey;
	OFString *_Nullable _valueName;
	OFData *_Nullable _data;
	DWORD _type;
	LSTATUS _status;
	OF_RESERVE_IVARS(OFSetWindowsRegistryValueFailedException, 4)
}

/**
 * @brief The registry key on which setting the value failed.
 */
@property (readonly, nonatomic) OFWindowsRegistryKey *registryKey;

Modified src/exceptions/OFStillLockedException.h from [9e844f7b24] to [da104224a4].

23
24
25
26
27
28
29

30
31
32
33
34
35
36
 *	  OFStillLockedException.h ObjFW/OFStillLockedException.h
 *
 * @brief An exception indicating that a lock is still locked.
 */
@interface OFStillLockedException: OFException
{
	id <OFLocking> _Nullable _lock;

}

/**
 * @brief The lock which is still locked.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) id <OFLocking> lock;








>







23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
 *	  OFStillLockedException.h ObjFW/OFStillLockedException.h
 *
 * @brief An exception indicating that a lock is still locked.
 */
@interface OFStillLockedException: OFException
{
	id <OFLocking> _Nullable _lock;
	OF_RESERVE_IVARS(OFStillLockedException, 4)
}

/**
 * @brief The lock which is still locked.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) id <OFLocking> lock;

Modified src/exceptions/OFTLSHandshakeFailedException.h from [624dc0f97d] to [f9e2ae9630].

38
39
40
41
42
43
44

45
46
47
48
49
50
51
 * @brief An exception indicating that a TLS handshake.
 */
@interface OFTLSHandshakeFailedException: OFException
{
	OFTLSStream *_stream;
	OFString *_Nullable _host;
	OFTLSStreamErrorCode _errorCode;

}

/**
 * @brief The TLS stream which failed the handshake.
 */
@property (readonly, nonatomic) OFTLSStream *stream;








>







38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
 * @brief An exception indicating that a TLS handshake.
 */
@interface OFTLSHandshakeFailedException: OFException
{
	OFTLSStream *_stream;
	OFString *_Nullable _host;
	OFTLSStreamErrorCode _errorCode;
	OF_RESERVE_IVARS(OFTLSHandshakeFailedException, 4)
}

/**
 * @brief The TLS stream which failed the handshake.
 */
@property (readonly, nonatomic) OFTLSStream *stream;

Modified src/exceptions/OFThreadJoinFailedException.h from [8bf49777b7] to [d301dc0b05].

29
30
31
32
33
34
35

36
37
38
39
40
41
42
 *
 * @brief An exception indicating that joining a thread failed.
 */
@interface OFThreadJoinFailedException: OFException
{
	OFThread *_Nullable _thread;
	int _errNo;

}

/**
 * @brief The thread which could not be joined.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFThread *thread;








>







29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
 *
 * @brief An exception indicating that joining a thread failed.
 */
@interface OFThreadJoinFailedException: OFException
{
	OFThread *_Nullable _thread;
	int _errNo;
	OF_RESERVE_IVARS(OFThreadJoinFailedException, 4)
}

/**
 * @brief The thread which could not be joined.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFThread *thread;

Modified src/exceptions/OFThreadStartFailedException.h from [d864107627] to [744fa4d2f0].

29
30
31
32
33
34
35

36
37
38
39
40
41
42
 *
 * @brief An exception indicating that starting a thread failed.
 */
@interface OFThreadStartFailedException: OFException
{
	OFThread *_Nullable _thread;
	int _errNo;

}

/**
 * @brief The thread which could not be started.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFThread *thread;








>







29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
 *
 * @brief An exception indicating that starting a thread failed.
 */
@interface OFThreadStartFailedException: OFException
{
	OFThread *_Nullable _thread;
	int _errNo;
	OF_RESERVE_IVARS(OFThreadStartFailedException, 4)
}

/**
 * @brief The thread which could not be started.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFThread *thread;

Modified src/exceptions/OFThreadStillRunningException.h from [2982187d56] to [8cadaadd37].

28
29
30
31
32
33
34

35
36
37
38
39
40
41
 *	  OFThreadStillRunningException.h ObjFW/OFThreadStillRunningException.h
 *
 * @brief An exception indicating that a thread is still running.
 */
@interface OFThreadStillRunningException: OFException
{
	OFThread *_Nullable _thread;

}

/**
 * @brief The thread which is still running.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFThread *thread;








>







28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
 *	  OFThreadStillRunningException.h ObjFW/OFThreadStillRunningException.h
 *
 * @brief An exception indicating that a thread is still running.
 */
@interface OFThreadStillRunningException: OFException
{
	OFThread *_Nullable _thread;
	OF_RESERVE_IVARS(OFThreadStillRunningException, 4)
}

/**
 * @brief The thread which is still running.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFThread *thread;

Modified src/exceptions/OFTruncatedDataException.h from [8a558e22e7] to [c355984cb5].

21
22
23
24
25
26
27



28
29
30
 * @class OFTruncatedDataException \
 *	  OFTruncatedDataException.h ObjFW/OFTruncatedDataException.h
 *
 * @brief An exception indicating that data was truncated while it should not
 *	  have been truncated.
 */
@interface OFTruncatedDataException: OFException



@end

OF_ASSUME_NONNULL_END







>
>
>



21
22
23
24
25
26
27
28
29
30
31
32
33
 * @class OFTruncatedDataException \
 *	  OFTruncatedDataException.h ObjFW/OFTruncatedDataException.h
 *
 * @brief An exception indicating that data was truncated while it should not
 *	  have been truncated.
 */
@interface OFTruncatedDataException: OFException
{
	OF_RESERVE_IVARS(OFTruncatedDataException, 4)
}
@end

OF_ASSUME_NONNULL_END

Modified src/exceptions/OFUnboundNamespaceException.h from [cc4424a80d] to [782770074b].

25
26
27
28
29
30
31

32
33
34
35
36
37
38
 *
 * @brief An exception indicating an attempt to use an unbound namespace.
 */
@interface OFUnboundNamespaceException: OFException
{
	OFString *_namespace;
	OFXMLElement *_element;

}

/**
 * @brief The unbound namespace.
 */
#ifndef __cplusplus
@property (readonly, nonatomic) OFString *namespace;







>







25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 *
 * @brief An exception indicating an attempt to use an unbound namespace.
 */
@interface OFUnboundNamespaceException: OFException
{
	OFString *_namespace;
	OFXMLElement *_element;
	OF_RESERVE_IVARS(OFUnboundNamespaceException, 4)
}

/**
 * @brief The unbound namespace.
 */
#ifndef __cplusplus
@property (readonly, nonatomic) OFString *namespace;

Modified src/exceptions/OFUnboundPrefixException.h from [6d7bca5c41] to [c1eaadb13e].

25
26
27
28
29
30
31

32
33
34
35
36
37
38
 *
 * @brief An exception indicating an attempt to use an unbound prefix.
 */
@interface OFUnboundPrefixException: OFException
{
	OFString *_prefix;
	OFXMLParser *_parser;

}

/**
 * @brief The unbound prefix.
 */
@property (readonly, nonatomic) OFString *prefix;








>







25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 *
 * @brief An exception indicating an attempt to use an unbound prefix.
 */
@interface OFUnboundPrefixException: OFException
{
	OFString *_prefix;
	OFXMLParser *_parser;
	OF_RESERVE_IVARS(OFUnboundPrefixException, 4)
}

/**
 * @brief The unbound prefix.
 */
@property (readonly, nonatomic) OFString *prefix;

Modified src/exceptions/OFUndefinedKeyException.h from [1d0c472b52] to [1b1bc72e6f].

25
26
27
28
29
30
31

32
33
34
35
36
37
38
 *	  Coding).
 */
@interface OFUndefinedKeyException: OFException
{
	id _object;
	OFString *_Nullable _key;
	id _Nullable _value;

}

/**
 * @brief The object on which the key is undefined.
 */
@property (readonly, nonatomic) id object;








>







25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 *	  Coding).
 */
@interface OFUndefinedKeyException: OFException
{
	id _object;
	OFString *_Nullable _key;
	id _Nullable _value;
	OF_RESERVE_IVARS(OFUndefinedKeyException, 4)
}

/**
 * @brief The object on which the key is undefined.
 */
@property (readonly, nonatomic) id object;

Modified src/exceptions/OFUnknownXMLEntityException.h from [fdd37fe4f2] to [effb41465b].

23
24
25
26
27
28
29

30
31
32
33
34
35
36
 *
 * @brief An exception indicating that a parser encountered an unknown XML
 *	  entity.
 */
@interface OFUnknownXMLEntityException: OFException
{
	OFString *_entityName;

}

/**
 * @brief The name of the unknown XML entity.
 */
@property (readonly, nonatomic) OFString *entityName;








>







23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
 *
 * @brief An exception indicating that a parser encountered an unknown XML
 *	  entity.
 */
@interface OFUnknownXMLEntityException: OFException
{
	OFString *_entityName;
	OF_RESERVE_IVARS(OFUnknownXMLEntityException, 4)
}

/**
 * @brief The name of the unknown XML entity.
 */
@property (readonly, nonatomic) OFString *entityName;

Modified src/exceptions/OFUnlockFailedException.h from [ab29b208b2] to [2273de4dc6].

24
25
26
27
28
29
30

31
32
33
34
35
36
37
 *
 * @brief An exception indicating that unlocking a lock failed.
 */
@interface OFUnlockFailedException: OFException
{
	id <OFLocking> _Nullable _lock;
	int _errNo;

}

/**
 * @brief The lock which could not be unlocked.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) id <OFLocking> lock;








>







24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
 *
 * @brief An exception indicating that unlocking a lock failed.
 */
@interface OFUnlockFailedException: OFException
{
	id <OFLocking> _Nullable _lock;
	int _errNo;
	OF_RESERVE_IVARS(OFUnlockFailedException, 4)
}

/**
 * @brief The lock which could not be unlocked.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) id <OFLocking> lock;

Modified src/exceptions/OFUnsupportedProtocolException.h from [8223e3796e] to [2e727d85fe].

26
27
28
29
30
31
32

33
34
35
36
37
38
39
 *
 * @brief An exception indicating that the protocol specified by the URL is not
 *	  supported.
 */
@interface OFUnsupportedProtocolException: OFException
{
	OFURL *_Nullable _URL;

}

/**
 * @brief The URL whose protocol is unsupported.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFURL *URL;








>







26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 *
 * @brief An exception indicating that the protocol specified by the URL is not
 *	  supported.
 */
@interface OFUnsupportedProtocolException: OFException
{
	OFURL *_Nullable _URL;
	OF_RESERVE_IVARS(OFUnsupportedProtocolException, 4)
}

/**
 * @brief The URL whose protocol is unsupported.
 */
@property OF_NULLABLE_PROPERTY (readonly, nonatomic) OFURL *URL;

Modified src/exceptions/OFUnsupportedVersionException.h from [fd604be220] to [2da3b1eaf2].

23
24
25
26
27
28
29

30
31
32
33
34
35
36
 *
 * @brief An exception indicating that the specified version of the format or
 *	  protocol is not supported.
 */
@interface OFUnsupportedVersionException: OFException
{
	OFString *_version;

}

/**
 * @brief The version which is unsupported.
 */
@property (readonly, nonatomic) OFString *version;








>







23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
 *
 * @brief An exception indicating that the specified version of the format or
 *	  protocol is not supported.
 */
@interface OFUnsupportedVersionException: OFException
{
	OFString *_version;
	OF_RESERVE_IVARS(OFUnsupportedVersionException, 4)
}

/**
 * @brief The version which is unsupported.
 */
@property (readonly, nonatomic) OFString *version;

Modified src/exceptions/OFWriteFailedException.h from [52a0c0096f] to [6dee61073a].

22
23
24
25
26
27
28

29
30
31
32
33
34
35
 *	  OFWriteFailedException.h ObjFW/OFWriteFailedException.h
 *
 * @brief An exception indicating that writing to an object failed.
 */
@interface OFWriteFailedException: OFReadOrWriteFailedException
{
	size_t _bytesWritten;

}

/**
 * @brief The number of bytes already written before the write failed.
 *
 * This can be used to make sure that a retry does not write data already
 * written before.







>







22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 *	  OFWriteFailedException.h ObjFW/OFWriteFailedException.h
 *
 * @brief An exception indicating that writing to an object failed.
 */
@interface OFWriteFailedException: OFReadOrWriteFailedException
{
	size_t _bytesWritten;
	OF_RESERVE_IVARS(OFWriteFailedException, 4)
}

/**
 * @brief The number of bytes already written before the write failed.
 *
 * This can be used to make sure that a retry does not write data already
 * written before.