mirror of
https://github.com/gnustep/libs-base.git
synced 2025-05-30 08:21:25 +00:00
Make the NSXMLNode ivar a union.
Having the same ivar exposed as different types in different compilation units is probably a bad idea in general and will break with the new ObjC ABI, where we have link-time checks for this. It would also confuse reflection and any languages that use reflection for bridging in exciting ways.
This commit is contained in:
parent
146d823689
commit
9b7e3a8fff
6 changed files with 97 additions and 85 deletions
|
@ -26,7 +26,6 @@
|
|||
|
||||
#if defined(HAVE_LIBXML)
|
||||
|
||||
#define GS_XMLNODETYPE xmlEntity
|
||||
#define GSInternal NSXMLDTDNodeInternal
|
||||
|
||||
#import "NSXMLPrivate.h"
|
||||
|
@ -101,12 +100,12 @@ GS_PRIVATE_INTERNAL(NSXMLDTDNode)
|
|||
|
||||
- (NSString*) notationName
|
||||
{
|
||||
return StringFromXMLStringPtr(internal->node->name);
|
||||
return StringFromXMLStringPtr(internal->node.entity->name);
|
||||
}
|
||||
|
||||
- (NSString*) publicID
|
||||
{
|
||||
return StringFromXMLStringPtr(internal->node->ExternalID);
|
||||
return StringFromXMLStringPtr(internal->node.entity->ExternalID);
|
||||
}
|
||||
|
||||
- (void) setDTDKind: (NSXMLDTDNodeKind)nodeKind
|
||||
|
@ -116,22 +115,22 @@ GS_PRIVATE_INTERNAL(NSXMLDTDNode)
|
|||
|
||||
- (void) setNotationName: (NSString*)notationName
|
||||
{
|
||||
internal->node->name = XMLSTRING(notationName);
|
||||
internal->node.entity->name = XMLSTRING(notationName);
|
||||
}
|
||||
|
||||
- (void) setPublicID: (NSString*)publicID
|
||||
{
|
||||
internal->node->ExternalID = XMLSTRING(publicID);
|
||||
internal->node.entity->ExternalID = XMLSTRING(publicID);
|
||||
}
|
||||
|
||||
- (void) setSystemID: (NSString*)systemID
|
||||
{
|
||||
internal->node->ExternalID = XMLSTRING(systemID);
|
||||
internal->node.entity->ExternalID = XMLSTRING(systemID);
|
||||
}
|
||||
|
||||
- (NSString*) systemID
|
||||
{
|
||||
return StringFromXMLStringPtr(internal->node->SystemID);
|
||||
return StringFromXMLStringPtr(internal->node.entity->SystemID);
|
||||
}
|
||||
|
||||
@end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue