[Gd-chatter] r11224 - trunk/libraries/xml-parser

turbo24prg at gwydiondylan.org turbo24prg at gwydiondylan.org
Mon Mar 5 19:51:10 CET 2007


Author: turbo24prg
Date: Mon Mar  5 19:51:08 2007
New Revision: 11224

Modified:
   trunk/libraries/xml-parser/library.dylan
   trunk/libraries/xml-parser/printing.dylan
   trunk/libraries/xml-parser/simple-xml.dylan
Log:
Bug: minor
 - fixed formating bug, treated '%' in text as a formater



Modified: trunk/libraries/xml-parser/library.dylan
==============================================================================
--- trunk/libraries/xml-parser/library.dylan	(original)
+++ trunk/libraries/xml-parser/library.dylan	Mon Mar  5 19:51:08 2007
@@ -7,6 +7,7 @@
   use meta;
   use io;
   use system, import: { file-system };
+  use regular-expressions;
 
   export xml-parser,
     xml-stream-parser,
@@ -122,7 +123,8 @@
   use streams;
   use xml-parser;
   use printing;
-  
+  use regular-expressions, import: { regexp-replace };
+
   export \with-xml,
     \with-xml-builder,
     escape-xml,
@@ -137,7 +139,7 @@
     add-namespace,
     remove-namespace,
     replace-element-text,
-    prefix,
+    prefix, prefix-setter,
     real-name,
     start-tag;
     

Modified: trunk/libraries/xml-parser/printing.dylan
==============================================================================
--- trunk/libraries/xml-parser/printing.dylan	(original)
+++ trunk/libraries/xml-parser/printing.dylan	Mon Mar  5 19:51:08 2007
@@ -184,7 +184,7 @@
 
 define method print-safe-string(str :: <string>, s :: <stream>) => ()
   for(ch in str)
-    format(s, check-char(ch));
+    format(s, "%s", check-char(ch));
   end for;
 end method print-safe-string;
 

Modified: trunk/libraries/xml-parser/simple-xml.dylan
==============================================================================
--- trunk/libraries/xml-parser/simple-xml.dylan	(original)
+++ trunk/libraries/xml-parser/simple-xml.dylan	Mon Mar  5 19:51:08 2007
@@ -270,6 +270,13 @@
   split(as(<string>, name), ':')[0];
 end method prefix;
 
+define method prefix-setter (prefix :: <string>, element :: <element>) 
+  if (~member?(':', as(<string>, element.name)))
+    element.name := as(<symbol>, concatenate(prefix, ":", as(<string>, element.name)));
+  end if;
+  element;
+end;
+
 define generic real-name (object :: <object>) => (res :: <string>);
 define method real-name (element :: <element>) 
  => (res :: <string>);



More information about the chatter mailing list