Utility

scala.xml.Utility$
object Utility extends TokenTests

The Utility object provides utility functions for processing instances of bound and not bound XML classes, as well as escaping text nodes.

Attributes

Graph
Supertypes
trait TokenTests
class Object
trait Matchable
class Any
Self type
Utility.type

Members list

Type members

Classlikes

object Escapes

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Escapes.type

Value members

Concrete methods

Appends "s" and escapes and " i s with "

Appends "s" and escapes and " i s with "

Attributes

Appends "s" if string s does not contain ", 's' otherwise.

Appends "s" if string s does not contain ", 's' otherwise.

Attributes

Returns '''null''' if the value is a correct attribute value, error message if it isn't.

Returns '''null''' if the value is a correct attribute value, error message if it isn't.

Attributes

Returns a set of all namespaces used in a sequence of nodes and all their descendants, including the empty namespaces.

Returns a set of all namespaces used in a sequence of nodes and all their descendants, including the empty namespaces.

Attributes

Adds all namespaces in node to set.

Adds all namespaces in node to set.

Attributes

final def escape(text: String): String

Escapes the characters < > & and " from string.

Escapes the characters < > & and " from string.

Attributes

final def escape(text: String, s: StringBuilder): StringBuilder

Appends escaped string to s.

Appends escaped string to s.

Attributes

def getName(s: String, index: Int): String
def hashCode(pre: String, label: String, attribHashCode: Int, scpeHash: Int, children: Seq[Node]): Int

Returns a hashcode for the given constituents of a node

Returns a hashcode for the given constituents of a node

Attributes

def parseCharRef(ch: () => Char, nextch: () => Unit, reportSyntaxError: String => Unit, reportTruncatedError: String => Unit): String

See [66]

 CharRef ::= "&amp;#" '0'..'9' {'0'..'9'} ";"
           | "&amp;#x" '0'..'9'|'A'..'F'|'a'..'f' { hexdigit } ";"

See [66]

Attributes

final def prefix(name: String): Option[String]

Returns prefix of qualified name if any.

Returns prefix of qualified name if any.

Attributes

def sequenceToXML(children: Seq[Node], pscope: NamespaceBinding, sb: StringBuilder, stripComments: Boolean, decodeEntities: Boolean, preserveWhitespace: Boolean, minimizeTags: Value): Unit
def serialize(x: Node, pscope: NamespaceBinding, sb: StringBuilder, stripComments: Boolean, decodeEntities: Boolean, preserveWhitespace: Boolean, minimizeTags: Value): StringBuilder

Serialize an XML Node to a StringBuilder.

Serialize an XML Node to a StringBuilder.

This is essentially a minor rework of toXML that can't have the same name due to an unfortunate combination of named/default arguments and overloading.

Attributes

Todo

use a Writer instead

def sort(md: MetaData): MetaData

returns a sorted attribute list

returns a sorted attribute list

Attributes

def sort(n: Node): Node

Return the node with its attribute list sorted alphabetically (prefixes are ignored)

Return the node with its attribute list sorted alphabetically (prefixes are ignored)

Attributes

def splitName(name: String): (Option[String], String)
def trim(x: Node): Node

Trims an element - call this method, when you know that it is an element (and not a text node) so you know that it will not be trimmed away. With this assumption, the function can return a Node, rather than a Seq[Node]. If you don't know, call trimProper and account for the fact that you may get back an empty sequence of nodes.

Trims an element - call this method, when you know that it is an element (and not a text node) so you know that it will not be trimmed away. With this assumption, the function can return a Node, rather than a Seq[Node]. If you don't know, call trimProper and account for the fact that you may get back an empty sequence of nodes.

Precondition: node is not a text node (it might be trimmed)

Attributes

def trimProper(x: Node): Seq[Node]

trim a child of an element. Attribute values and Atom nodes that are not Text nodes are unaffected.

trim a child of an element. Attribute values and Atom nodes that are not Text nodes are unaffected.

Attributes

Appends unescaped string to s, amp becomes &amp;, lt becomes &lt; etc..

Appends unescaped string to s, amp becomes &amp;, lt becomes &lt; etc..

Attributes

Returns

'''null''' if ref was not a predefined entity.

Deprecated methods

def toXML(x: Node, pscope: NamespaceBinding, sb: StringBuilder, stripComments: Boolean, decodeEntities: Boolean, preserveWhitespace: Boolean, minimizeTags: Boolean): StringBuilder

Serialize the provided Node to the provided StringBuilder.

Serialize the provided Node to the provided StringBuilder.

Note that calling this source-compatible method will result in the same old, arguably almost universally unwanted, behaviour.

Attributes

Deprecated
true

Inherited methods

Attributes

Inherited from:
TokenTests

Attributes

Inherited from:
TokenTests
def isAlpha(c: Char): Boolean

These are 99% sure to be redundant but refactoring on the safe side.

These are 99% sure to be redundant but refactoring on the safe side.

Attributes

Inherited from:
TokenTests

Attributes

Inherited from:
TokenTests
def isName(s: String): Boolean

See [5] of XML 1.0 specification.

Name ::= ( Letter | '_' ) (NameChar)*

See [5] of XML 1.0 specification.

Attributes

Inherited from:
TokenTests
def isNameChar(ch: Char): Boolean

See [4] and [4a] of Appendix B of XML 1.0 specification.

NameChar ::= Letter | Digit | '.' | '-' | '_' | ':' | #xB7
           | CombiningChar | Extender

See [4] and [4a] of Appendix B of XML 1.0 specification.

Attributes

Inherited from:
TokenTests

where Letter means in one of the Unicode general categories { Ll, Lu, Lo, Lt, Nl }.

NameStart ::= ( Letter | '_' | ':' )

where Letter means in one of the Unicode general categories { Ll, Lu, Lo, Lt, Nl }.

We do not allow a name to start with :. See [4] and Appendix B of XML 1.0 specification

Attributes

Inherited from:
TokenTests

Attributes

Inherited from:
TokenTests
final def isSpace(cs: Seq[Char]): Boolean
(#x20 | #x9 | #xD | #xA)+

Attributes

Inherited from:
TokenTests
final def isSpace(ch: Char): Boolean
(#x20 | #x9 | #xD | #xA)

Attributes

Inherited from:
TokenTests
def isValidIANAEncoding(ianaEncoding: Seq[Char]): Boolean

Returns true if the encoding name is a valid IANA encoding. This method does not verify that there is a decoder available for this encoding, only that the characters are valid for an IANA encoding name.

Returns true if the encoding name is a valid IANA encoding. This method does not verify that there is a decoder available for this encoding, only that the characters are valid for an IANA encoding name.

Value parameters

ianaEncoding

The IANA encoding name.

Attributes

Inherited from:
TokenTests

Concrete fields

final val SU: Char

Implicits

Implicits