Package

eu.cdevreeze.yaidom

scalaxml

Permalink

package scalaxml

Wrapper around class scala.xml.Elem, adapting it to the eu.cdevreeze.yaidom.queryapi.ElemLike API.

This wrapper brings the uniform yaidom query API to Scala XML literals (and Scala XML Elems in general).

For some namespace-related pitfalls and peculiarities, see eu.cdevreeze.yaidom.scalaxml.ScalaXmlElem.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. scalaxml
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Type Members

  1. sealed trait CanBeScalaXmlDocumentChild extends ScalaXmlNode with CanBeDocumentChild

    Permalink
  2. final class ScalaXmlAtom extends ScalaXmlNode

    Permalink

    Wrapper around a Scala XML Atom that is not Text or PCData

  3. final class ScalaXmlCData extends ScalaXmlNode with Text

    Permalink
  4. final class ScalaXmlComment extends CanBeScalaXmlDocumentChild with Comment

    Permalink
  5. final class ScalaXmlDocument extends DocumentApi

    Permalink

    Wrapper around a scala.xml.Document.

  6. final class ScalaXmlElem extends CanBeScalaXmlDocumentChild with Elem with ScopedElemLike

    Permalink

    Wrapper around scala.xml.Elem, conforming to the eu.cdevreeze.yaidom.queryapi.ElemApi API.

    Wrapper around scala.xml.Elem, conforming to the eu.cdevreeze.yaidom.queryapi.ElemApi API.

    See the documentation of the mixed-in query API trait(s) for more details on the uniform query API offered by this class.

    Keep in mind that the HasENameApi specific part of the API is a broken abstraction. If the wrapped Scala XML element misses some namespace declarations for used element or attribute names, these element and/or attribute names cannot be resolved, and exceptions are thrown when querying for them! The ElemApi part of the API does not suffer from this broken abstraction, so is less dangerous to use.

    The wrapper instances are very light-weight, and typically very short-lived. On the other hand, each query may create many wrapper instances for the query results. By design, the only state of each wrapper instance is the wrapped Scala XML Elem.

  7. final class ScalaXmlEntityRef extends ScalaXmlNode with EntityRef

    Permalink
  8. sealed trait ScalaXmlNode extends Node

    Permalink

    Wrappers around scala.xml.Node and subclasses, such that the wrapper around scala.xml.Elem conforms to the eu.cdevreeze.yaidom.queryapi.ElemApi API.

    Wrappers around scala.xml.Node and subclasses, such that the wrapper around scala.xml.Elem conforms to the eu.cdevreeze.yaidom.queryapi.ElemApi API.

    Use these wrappers only if there is a specific need for them, because these wrappers do have their costs (such as the creation of lots of query result objects, the repeated costs of querying element/attribute names, the conceptual differences between Scala XML and native yaidom nodes, etc.).

    For some namespace-related pitfalls, see eu.cdevreeze.yaidom.scalaxml.ScalaXmlElem.

    The wrappers are very light-weight, and typically very short-lived. On the other hand, each query may create many wrapper instances for the query results. By design, the only state of each wrapper instance is the wrapped Scala XML node.

  9. final class ScalaXmlProcessingInstruction extends CanBeScalaXmlDocumentChild with ProcessingInstruction

    Permalink
  10. final class ScalaXmlText extends ScalaXmlNode with Text

    Permalink

Inherited from AnyRef

Inherited from Any

Ungrouped