diff options
author | Burak Emir <emir@epfl.ch> | 2007-06-29 09:23:10 +0000 |
---|---|---|
committer | Burak Emir <emir@epfl.ch> | 2007-06-29 09:23:10 +0000 |
commit | 2836a47041739dddb5fe96f1351f6b7a31ae3c48 (patch) | |
tree | 4c3dd7107331932bf0386e0837b74c8d589d68af | |
parent | eea125fb1d82edc9a1d50125c65345958c50f5d8 (diff) | |
download | scala-2836a47041739dddb5fe96f1351f6b7a31ae3c48.tar.gz scala-2836a47041739dddb5fe96f1351f6b7a31ae3c48.tar.bz2 scala-2836a47041739dddb5fe96f1351f6b7a31ae3c48.zip |
xml parsing deal with processing instructions (...
xml parsing deal with processing instructions (library patch by RJ)
-rw-r--r-- | src/library/scala/xml/parsing/FactoryAdapter.scala | 11 | ||||
-rw-r--r-- | src/library/scala/xml/parsing/NoBindingFactoryAdapter.scala | 5 |
2 files changed, 16 insertions, 0 deletions
diff --git a/src/library/scala/xml/parsing/FactoryAdapter.scala b/src/library/scala/xml/parsing/FactoryAdapter.scala index 733a2e0aa8..2ca0527a6b 100644 --- a/src/library/scala/xml/parsing/FactoryAdapter.scala +++ b/src/library/scala/xml/parsing/FactoryAdapter.scala @@ -64,6 +64,10 @@ abstract class FactoryAdapter extends DefaultHandler() { */ def createText(text: String): Text // abstract + /** creates a new processing instruction node. + */ + def createProcInstr(target: String, data: String): Seq[ProcInstr] + // // ContentHandler methods // @@ -207,6 +211,13 @@ abstract class FactoryAdapter extends DefaultHandler() { else false } // endElement(String,String,String) + /** Processing instruction. + */ + override def processingInstruction(target: String, data: String) { + for (pi <- createProcInstr(target, data)) + hStack.push(pi) + } + // // ErrorHandler methods // diff --git a/src/library/scala/xml/parsing/NoBindingFactoryAdapter.scala b/src/library/scala/xml/parsing/NoBindingFactoryAdapter.scala index b3b17d6909..be71e55fef 100644 --- a/src/library/scala/xml/parsing/NoBindingFactoryAdapter.scala +++ b/src/library/scala/xml/parsing/NoBindingFactoryAdapter.scala @@ -49,6 +49,11 @@ class NoBindingFactoryAdapter extends FactoryAdapter with NodeFactory[Elem] { def createText( text:String ) = Text( text ); + /** create a processing instruction + */ + def createProcInstr(target: String, data: String) = + makeProcInstr(target, data) + /** loads an XML document, returning a Symbol node. */ override def loadXML( source:InputSource ):Elem = |