package scala.xml
class Atom[+A](val data: A) extends SpecialNode with Serializable
{  
  if (data == null)
    throw new IllegalArgumentException("cannot construct Atom(null)")
  override def basisForHashCode: Seq[Any] = Seq(data)
  override def strict_==(other: Equality) = other match {
    case x: Atom[_] => data == x.data
    case _          => false
  }
  override def canEqual(other: Any) = other match {
    case _: Atom[_] => true
    case _          => false
  }
  final override def doCollectNamespaces = false
  final override def doTransform         = false
  
  def label = "#PCDATA"
  
  def buildString(sb: StringBuilder) =
    Utility.escape(data.toString(), sb)
  override def text: String = data.toString()
}