ObjFW  Diff

Differences From Artifact [3bbec56037]:

To Artifact [07cdc30ecf]:


30
31
32
33
34
35
36






37
38
39
40
41
42
43
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49







+
+
+
+
+
+








#import "OFInvalidArgumentException.h"
#import "OFMalformedXMLException.h"
#import "OFNotImplementedException.h"
#import "OFUnboundNamespaceException.h"

#import "macros.h"

/* References for static linking */
void _references_to_categories_of_OFXMLElement(void)
{
	_OFXMLElement_Serialization_reference = 1;
}

@interface OFXMLElement_OFXMLElementBuilderDelegate: OFObject
{
@public
	OFXMLElement *element;
}
@end
317
318
319
320
321
322
323
324
325
326



327
328
329
330



331
332
333
334



335
336
337
338
339
340
341
323
324
325
326
327
328
329



330
331
332
333



334
335
336
337



338
339
340
341
342
343
344
345
346
347







-
-
-
+
+
+

-
-
-
+
+
+

-
-
-
+
+
+







			 namespace: OF_SERIALIZATION_NS];
		namespacesElement = [element
		    elementForName: @"namespaces"
			 namespace: OF_SERIALIZATION_NS];
		childrenElement = [element elementForName: @"children"
						namespace: OF_SERIALIZATION_NS];

		attributes = [[OFSerialization objectByDeserializingXMLElement:
		    [attributesElement elementForName: @"object"
					    namespace: OF_SERIALIZATION_NS]]
		attributes = [[[attributesElement
		    elementForName: @"object"
			 namespace: OF_SERIALIZATION_NS] objectByDeserializing]
		    retain];
		namespaces = [[OFSerialization objectByDeserializingXMLElement:
		    [namespacesElement elementForName: @"object"
					    namespace: OF_SERIALIZATION_NS]]
		namespaces = [[[namespacesElement
		    elementForName: @"object"
			 namespace: OF_SERIALIZATION_NS] objectByDeserializing]
		    retain];
		children = [[OFSerialization objectByDeserializingXMLElement:
		    [childrenElement elementForName: @"object"
					  namespace: OF_SERIALIZATION_NS]]
		children = [[[childrenElement
		    elementForName: @"object"
			 namespace: OF_SERIALIZATION_NS] objectByDeserializing]
		    retain];

		if (!((name != nil || ns != nil || defaultNamespace != nil ||
		    [attributes count] > 0 || [namespaces count] > 0 ||
		    [children count] > 0) ^ (characters != nil) ^
		    (CDATA != nil) ^ (comment != nil)))
			@throw [OFInvalidArgumentException newWithClass: isa