Strings and data tidied and simplified - GSXML bugfixes

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@7622 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Richard Frith-MacDonald 2000-09-27 15:57:30 +00:00
parent b2b79c362d
commit 622d38a368
5 changed files with 66 additions and 21 deletions

View file

@ -9,6 +9,9 @@
* Source/NSObject.m: ditto
* Source/NSString.m: ditto
* Source/externs.m: Removed unused NXConstantString assignments.
* Source/GSXML.m: ([-propertiesAsDictionary]) bugfix adding nil object
to dictionary. ([-externalSubset:externalID:systemID:]) method added.
Fixes suggested by mguesdon@oxymium.net
2000-09-26 Lyndon Tremblay <humasect@home.com>

View file

@ -237,6 +237,19 @@
</desc>
</method>
<method type="void">
<sel>externalSubset:</sel>
<arg type="NSString*">name</arg>
<sel>externalID:</sel>
<arg type="NSString*">externalID</arg>
<sel>systemID:</sel>
<arg type="NSString*">systemID</arg>
<desc>
<p>Callback on external subset declaration.
</p>
</desc>
</method>
<method type="void*">
<sel>resolveEntity:</sel>
<arg type="NSString*">publicID</arg>

View file

@ -52,18 +52,19 @@ XML SAX Handler.</p>
<ul>
<li><a href ="GSSAXHandler.html#method-0">+handler</a>
<li><a href ="GSSAXHandler.html#method-8">-attribute:value:</a>
<li><a href ="GSSAXHandler.html#method-27">-attributeDecl:name:type:typeDefValue:defaultValue:</a>
<li><a href ="GSSAXHandler.html#method-28">-attributeDecl:name:type:typeDefValue:defaultValue:</a>
<li><a href ="GSSAXHandler.html#method-13">-cdataBlock:</a>
<li><a href ="GSSAXHandler.html#method-9">-characters:</a>
<li><a href ="GSSAXHandler.html#method-12">-comment:</a>
<li><a href ="GSSAXHandler.html#method-28">-elementDecl:type:</a>
<li><a href ="GSSAXHandler.html#method-29">-elementDecl:type:</a>
<li><a href ="GSSAXHandler.html#method-4">-endDocument</a>
<li><a href ="GSSAXHandler.html#method-7">-endElement</a>
<li><a href ="GSSAXHandler.html#method-26">-entityDecl:type:publicId:systemId:content:</a>
<li><a href ="GSSAXHandler.html#method-27">-entityDecl:type:publicId:systemId:content:</a>
<li><a href ="GSSAXHandler.html#method-15">-error:</a>
<li><a href ="GSSAXHandler.html#method-21">-externalSubset:externalID:systemID:</a>
<li><a href ="GSSAXHandler.html#method-16">-fatalError:</a>
<li><a href ="GSSAXHandler.html#method-22">-getEntity:</a>
<li><a href ="GSSAXHandler.html#method-23">-getParameterEntity:</a>
<li><a href ="GSSAXHandler.html#method-23">-getEntity:</a>
<li><a href ="GSSAXHandler.html#method-24">-getParameterEntity:</a>
<li><a href ="GSSAXHandler.html#method-14">-globalNamespace:href:prefix:</a>
<li><a href ="GSSAXHandler.html#method-19">-hasExternalSubset:</a>
<li><a href ="GSSAXHandler.html#method-18">-hasInternalSubset:</a>
@ -71,15 +72,15 @@ XML SAX Handler.</p>
<li><a href ="GSSAXHandler.html#method-20">-internalSubset:externalID:systemID:</a>
<li><a href ="GSSAXHandler.html#method-5">-isStandalone</a>
<li><a href ="GSSAXHandler.html#method-1">-lib</a>
<li><a href ="GSSAXHandler.html#method-24">-namespaceDecl:href:prefix:</a>
<li><a href ="GSSAXHandler.html#method-25">-notationDecl:systemId:</a>
<li><a href ="GSSAXHandler.html#method-25">-namespaceDecl:href:prefix:</a>
<li><a href ="GSSAXHandler.html#method-26">-notationDecl:systemId:</a>
<li><a href ="GSSAXHandler.html#method-2">-parser</a>
<li><a href ="GSSAXHandler.html#method-11">-processInstruction:value:</a>
<li><a href ="GSSAXHandler.html#method-30">-reference:</a>
<li><a href ="GSSAXHandler.html#method-21">-resolveEntity:systemID:</a>
<li><a href ="GSSAXHandler.html#method-31">-reference:</a>
<li><a href ="GSSAXHandler.html#method-22">-resolveEntity:systemID:</a>
<li><a href ="GSSAXHandler.html#method-3">-startDocument</a>
<li><a href ="GSSAXHandler.html#method-6">-startElement:attributes:</a>
<li><a href ="GSSAXHandler.html#method-29">-unparsedEntityDecl:public:system:notationName:</a>
<li><a href ="GSSAXHandler.html#method-30">-unparsedEntityDecl:public:system:notationName:</a>
<li><a href ="GSSAXHandler.html#method-17">-warning:</a>
</ul>
<hr><h2>Class Methods </h2>
@ -278,7 +279,16 @@ Callback on internal subset declaration.
<hr>
<h3><a name ="method-21">resolveEntity:systemID:</a></h3>
<h3><a name ="method-21">externalSubset:externalID:systemID:</a></h3>
- (void) <b>externalSubset:</b> (NSString*)name <b>externalID:</b> (NSString*)externalID <b>systemID:</b> (NSString*)systemID;<br>
<p>
Callback on external subset declaration.
</p>
<hr>
<h3><a name ="method-22">resolveEntity:systemID:</a></h3>
- (void*) <b>resolveEntity:</b> (NSString*)publicID <b>systemID:</b> (NSString*)systemID;<br>
<p>
@ -288,7 +298,7 @@ The entity loader, to control the loading of external entities,
<hr>
<h3><a name ="method-22">getEntity:</a></h3>
<h3><a name ="method-23">getEntity:</a></h3>
- (void*) <b>getEntity:</b> (NSString*)name;<br>
<p>
@ -297,7 +307,7 @@ Get an entity by name.
<hr>
<h3><a name ="method-23">getParameterEntity:</a></h3>
<h3><a name ="method-24">getParameterEntity:</a></h3>
- (void*) <b>getParameterEntity:</b> (NSString*)name;<br>
<p>
@ -306,7 +316,7 @@ Get a parameter entity by name.
<hr>
<h3><a name ="method-24">namespaceDecl:href:prefix:</a></h3>
<h3><a name ="method-25">namespaceDecl:href:prefix:</a></h3>
- (void) <b>namespaceDecl:</b> (NSString*)name <b>href:</b> (NSString*)href <b>prefix:</b> (NSString*)prefix;<br>
<p>
@ -315,7 +325,7 @@ A namespace has been parsed.
<hr>
<h3><a name ="method-25">notationDecl:systemId:</a></h3>
<h3><a name ="method-26">notationDecl:systemId:</a></h3>
- (void) <b>notationDecl:</b> (NSString*)publicId <b>systemId:</b> (NSString*)systemId;<br>
<p>
@ -324,7 +334,7 @@ What to do when a notation declaration has been parsed.
<hr>
<h3><a name ="method-26">entityDecl:type:publicId:systemId:content:</a></h3>
<h3><a name ="method-27">entityDecl:type:publicId:systemId:content:</a></h3>
- (void) <b>entityDecl:</b> (NSString*)name <b>type:</b> (int)type <b>publicId:</b> (NSString*)publicId <b>systemId:</b> (NSString*)systemId <b>content:</b> (NSString*)content;<br>
<p>
@ -333,7 +343,7 @@ An entity definition has been parsed.
<hr>
<h3><a name ="method-27">attributeDecl:name:type:typeDefValue:defaultValue:</a></h3>
<h3><a name ="method-28">attributeDecl:name:type:typeDefValue:defaultValue:</a></h3>
- (void) <b>attributeDecl:</b> (NSString*)nameElement <b>name:</b> (NSString*)name <b>type:</b> (int)type <b>typeDefValue:</b> (int)defType <b>defaultValue:</b> (NSString*)value;<br>
<p>
@ -342,7 +352,7 @@ An attribute definition has been parsed.
<hr>
<h3><a name ="method-28">elementDecl:type:</a></h3>
<h3><a name ="method-29">elementDecl:type:</a></h3>
- (void) <b>elementDecl:</b> (NSString*)name <b>type:</b> (int)type;<br>
<p>
@ -351,7 +361,7 @@ An element definition has been parsed.
<hr>
<h3><a name ="method-29">unparsedEntityDecl:public:system:notationName:</a></h3>
<h3><a name ="method-30">unparsedEntityDecl:public:system:notationName:</a></h3>
- (void) <b>unparsedEntityDecl:</b> (NSString*)name <b>public:</b> (NSString*)publicId <b>system:</b> (NSString*)systemId <b>notationName:</b> (NSString*)notation;<br>
<p>
@ -360,7 +370,7 @@ What to do when an unparsed entity declaration is parsed.
<hr>
<h3><a name ="method-30">reference:</a></h3>
<h3><a name ="method-31">reference:</a></h3>
- (void) <b>reference:</b> (NSString*)name;<br>
<p>

View file

@ -246,6 +246,9 @@ typedef xmlNsType GSXMLNamespaceType;
externalID: (NSString*)externalID
systemID: (NSString*)systemID;
- (int) hasExternalSubset;
- (void) externalSubset: (NSString*)name
externalID: (NSString*)externalID
systemID: (NSString*)systemID;
- (void*) resolveEntity: (NSString*)publicId
systemID: (NSString*)systemID;
- (void*) getEntity: (NSString*)name;

View file

@ -535,7 +535,7 @@ static NSMapTable *nodeNames = 0;
}
else
{
[d setObject: nil
[d setObject: @""
forKey: (*csImp)(NSString_class, csSel, name)];
}
prop = prop->next;
@ -1213,6 +1213,15 @@ internalSubsetFunction(void *ctx, const char *name,
systemID: (*csImp)(NSString_class, csSel, SystemID)];
}
static void
externalSubsetFunction(void *ctx, const char *name,
const xmlChar *ExternalID, const xmlChar *SystemID)
{
[HANDLER externalSubset: (*csImp)(NSString_class, csSel, name)
externalID: (*csImp)(NSString_class, csSel, ExternalID)
systemID: (*csImp)(NSString_class, csSel, SystemID)];
}
static xmlParserInputPtr
resolveEntityFunction(void *ctx, const char *publicId, const char *systemId)
{
@ -1408,6 +1417,7 @@ fatalErrorFunction(void *ctx, const char *msg, ...)
#define LIB ((xmlSAXHandlerPtr)lib)
LIB->internalSubset = internalSubsetFunction;
LIB->externalSubset = externalSubsetFunction;
LIB->isStandalone = isStandaloneFunction;
LIB->hasInternalSubset = hasInternalSubsetFunction;
LIB->hasExternalSubset = hasExternalSubsetFunction;
@ -1581,6 +1591,12 @@ fatalErrorFunction(void *ctx, const char *msg, ...)
return 0;
}
- (void) externalSubset: (NSString*)name
externalID: (NSString*)externalID
systemID: (NSString*)systemID
{
}
- (void*) getEntity: (NSString*)name
{
return 0;