diff options
author | buraq <buraq@epfl.ch> | 2004-03-18 16:23:36 +0000 |
---|---|---|
committer | buraq <buraq@epfl.ch> | 2004-03-18 16:23:36 +0000 |
commit | dacc0190d587be8614618ea66e2421ae777b6dd8 (patch) | |
tree | e57cb5a35a295b4b072308b321a4113aa3461d9a | |
parent | 2bea6271b4f011879acdd8eefc592104169240f0 (diff) | |
download | scala-dacc0190d587be8614618ea66e2421ae777b6dd8.tar.gz scala-dacc0190d587be8614618ea66e2421ae777b6dd8.tar.bz2 scala-dacc0190d587be8614618ea66e2421ae777b6dd8.zip |
xml parsing changes + slight bugfix in xml repr...
xml parsing changes + slight bugfix in xml representation
-rw-r--r-- | sources/scala/tools/scalac/ast/parser/Scanner.scala | 3 | ||||
-rw-r--r-- | sources/scala/xml/Elem.scala | 8 |
2 files changed, 6 insertions, 5 deletions
diff --git a/sources/scala/tools/scalac/ast/parser/Scanner.scala b/sources/scala/tools/scalac/ast/parser/Scanner.scala index 6b01b484f5..665aa4088e 100644 --- a/sources/scala/tools/scalac/ast/parser/Scanner.scala +++ b/sources/scala/tools/scalac/ast/parser/Scanner.scala @@ -685,6 +685,7 @@ class Scanner(_unit: Unit) extends TokenData { * @todo: may XML contain SU, in CDATA sections ? */ def xNext = { + lastpos = pos; nextch(); ch match { case SU => @@ -816,7 +817,7 @@ class Scanner(_unit: Unit) extends TokenData { xToken('!'); xToken('-'); xToken('-'); - xSkipToNext('-', false); + while ( ch != '-' ) { xNext; }; xToken('-'); xToken('-'); xToken('>'); diff --git a/sources/scala/xml/Elem.scala b/sources/scala/xml/Elem.scala index bd4aabb054..fc224f0d84 100644 --- a/sources/scala/xml/Elem.scala +++ b/sources/scala/xml/Elem.scala @@ -19,24 +19,24 @@ case class Elem( label:String, child:Node* ) extends Node with Similarity { /** returns a new element with updated attributes */ - final def %(attrs: Seq[Pair[String, String]]) = { + final def %(attrs: Seq[Pair[String, String]]):Elem = { val newmap = new HashMap[String,String](); for( val p <- hmap.elements ) { newmap += p._1 -> p._2 }; for( val p <- attrs ) { newmap += p._1 -> p._2 }; new Elem( label, child:_* ) { private val hmap = newmap; - //override def attribute = newmap.elements.toSeq( newmap.size ); + override def attribute = newmap.elements.toSeq( newmap.size ); }; } /** returns a new symbol with updated attribute */ - final def %(attr: Pair[String, String]) = { + final def %(attr: Pair[String, String]):Elem = { val newmap = new HashMap[String,String](); for( val p <- hmap.elements ) { newmap += p._1 -> p._2 }; newmap += attr._1 -> attr._2; new Elem( label, child:_* ) { private val hmap = newmap; - //override def attribute = newmap.elements.toSeq( newmap.size ); + override def attribute = newmap.elements.toSeq( newmap.size ); }; } } |