summaryrefslogtreecommitdiff
path: root/sources
diff options
context:
space:
mode:
authorBurak Emir <emir@epfl.ch>2005-11-04 13:04:48 +0000
committerBurak Emir <emir@epfl.ch>2005-11-04 13:04:48 +0000
commitb9461febf40e59b82c6021dff3ade484d33fe843 (patch)
tree1d54e5f0bcb8653253351aaa62d6bf385df4c24a /sources
parent4aa7f95c0c9d25528e56e1040043f990bb9a85d2 (diff)
downloadscala-b9461febf40e59b82c6021dff3ade484d33fe843.tar.gz
scala-b9461febf40e59b82c6021dff3ade484d33fe843.tar.bz2
scala-b9461febf40e59b82c6021dff3ade484d33fe843.zip
text method
Diffstat (limited to 'sources')
-rw-r--r--sources/scala/xml/Elem.scala5
-rw-r--r--sources/scala/xml/EntityRef.scala4
-rw-r--r--sources/scala/xml/MetaData.scala13
-rw-r--r--sources/scala/xml/Molecule.scala9
4 files changed, 15 insertions, 16 deletions
diff --git a/sources/scala/xml/Elem.scala b/sources/scala/xml/Elem.scala
index ebf6a39cbe..2511ab3fac 100644
--- a/sources/scala/xml/Elem.scala
+++ b/sources/scala/xml/Elem.scala
@@ -29,10 +29,10 @@ case class Elem(override val prefix: String,
val child: Node*) extends Node {
if (prefix != null && 0 == prefix.length())
- error("prefix of zero length, use null instead");
+ scala.Predef.error("prefix of zero length, use null instead");
if (null == scope)
- error("scope is null");
+ scala.Predef.error("scope is null");
//@todo: copy the children,
// setting namespace scope if necessary
@@ -58,6 +58,7 @@ case class Elem(override val prefix: String,
scope,
child:_*);
+ /* returns concatenation of text(n) for each child n */
override def text = {
val sb = new StringBuffer();
val it = child.elements;
diff --git a/sources/scala/xml/EntityRef.scala b/sources/scala/xml/EntityRef.scala
index 192cf85797..3ae1ef6866 100644
--- a/sources/scala/xml/EntityRef.scala
+++ b/sources/scala/xml/EntityRef.scala
@@ -15,7 +15,7 @@ package scala.xml;
* @param text the text contained in this node
**/
-case class EntityRef( entityName:String ) extends SpecialNode {
+case class EntityRef(entityName: String) extends SpecialNode {
final override def typeTag$:Int = -5;
@@ -31,6 +31,8 @@ case class EntityRef( entityName:String ) extends SpecialNode {
override def hashCode() = entityName.hashCode();
+ override def text = "";
+
/** appends "&amp; entityName;" to this stringbuffer */
def toString(sb:StringBuffer) =
sb.append("&").append(entityName).append(";");
diff --git a/sources/scala/xml/MetaData.scala b/sources/scala/xml/MetaData.scala
index f36144e259..7e81f0f1f4 100644
--- a/sources/scala/xml/MetaData.scala
+++ b/sources/scala/xml/MetaData.scala
@@ -62,16 +62,11 @@ abstract class MetaData extends Iterable[MetaData] {
}
}
+ /** bq: this can be done better */
def elements = new Iterator[MetaData] {
- var x: MetaData = _;
- def hasNext = null == x || x.hasNext;
- def next = {
- x = if(null == x)
- MetaData.this;
- else
- x.next;
- x
- }
+ var x: MetaData = MetaData.this;
+ def hasNext = Null != x;
+ def next = x.next;
}
/** shallow equals method */
diff --git a/sources/scala/xml/Molecule.scala b/sources/scala/xml/Molecule.scala
index b1c965eadc..d2141d069b 100644
--- a/sources/scala/xml/Molecule.scala
+++ b/sources/scala/xml/Molecule.scala
@@ -9,10 +9,9 @@
package scala.xml;
-/** an XML node for text (PCDATA). Used in both non-bound and bound XML
- * representations
- * @author Burak Emir
- * @param text the text contained in this node, may not be null.
+/** an XML node for a list of data items.
+ * @author buraq
+ * @param list a list of data items, space separated
*/
class Molecule[+A]( val list: List[A] ) extends SpecialNode {
@@ -31,6 +30,8 @@ class Molecule[+A]( val list: List[A] ) extends SpecialNode {
override def hashCode() =
list.hashCode();
+ override def text = list.mkString(""," ","");
+
/** returns text, with some characters escaped according to XML spec */
def toString(sb:StringBuffer) =
sb.append(list.mkString(""," ",""))