Any kind of XML tag with attributes

Introduced properties

fun attributes: Array[XMLAttribute]

dom :: XMLAttrTag :: attributes

List of attributes in a Tag
protected fun attributes=(attributes: Array[XMLAttribute])

dom :: XMLAttrTag :: attributes=

List of attributes in a Tag
fun attributes_to_map: Map[String, String]

dom :: XMLAttrTag :: attributes_to_map

Attributes as a map (ignoring malformed attributes)
init defaultinit(location: nullable Location, tag_name: String, attributes: Array[XMLAttribute])

dom :: XMLAttrTag :: defaultinit

Redefined properties

redef type SELF: XMLAttrTag

dom $ XMLAttrTag :: SELF

Type of this instance, automatically specialized in every class

All properties

fun !=(other: nullable Object): Bool

core :: Object :: !=

Have self and other different values?
fun ==(other: nullable Object): Bool

core :: Object :: ==

Have self and other the same value?
type CLASS: Class[SELF]

core :: Object :: CLASS

The type of the class of self.
type SELF: Object

core :: Object :: SELF

Type of this instance, automatically specialized in every class
fun [](tag_name: String): Array[XMLTag]

dom :: XMLEntity :: []

The XMLTag children with the tag_name
fun attributes: Array[XMLAttribute]

dom :: XMLAttrTag :: attributes

List of attributes in a Tag
protected fun attributes=(attributes: Array[XMLAttribute])

dom :: XMLAttrTag :: attributes=

List of attributes in a Tag
fun attributes_to_map: Map[String, String]

dom :: XMLAttrTag :: attributes_to_map

Attributes as a map (ignoring malformed attributes)
fun children: Sequence[XMLEntity]

dom :: XMLEntity :: children

The children of self
protected fun children=(children: Sequence[XMLEntity])

dom :: XMLEntity :: children=

The children of self
protected fun class_factory(name: String): CLASS

core :: Object :: class_factory

Implementation used by get_class to create the specific class.
fun class_name: String

core :: Object :: class_name

The class name of the object.
init defaultinit(location: nullable Location, tag_name: String)

dom :: XMLTag :: defaultinit

init defaultinit(location: nullable Location)

dom :: XMLEntity :: defaultinit

init defaultinit(location: nullable Location, tag_name: String, attributes: Array[XMLAttribute])

dom :: XMLAttrTag :: defaultinit

fun get_class: CLASS

core :: Object :: get_class

The meta-object representing the dynamic type of self.
fun hash: Int

core :: Object :: hash

The hash code of the object.
init init

core :: Object :: init

fun inspect: String

core :: Object :: inspect

Developer readable representation of self.
protected fun inspect_head: String

core :: Object :: inspect_head

Return "CLASSNAME:#OBJECTID".
intern fun is_same_instance(other: nullable Object): Bool

core :: Object :: is_same_instance

Return true if self and other are the same instance (i.e. same identity).
fun is_same_serialized(other: nullable Object): Bool

core :: Object :: is_same_serialized

Is self the same as other in a serialization context?
intern fun is_same_type(other: Object): Bool

core :: Object :: is_same_type

Return true if self and other have the same dynamic type.
fun location: nullable Location

dom :: XMLEntity :: location

Optional location of the entity in source
protected fun location=(location: nullable Location)

dom :: XMLEntity :: location=

Optional location of the entity in source
intern fun object_id: Int

core :: Object :: object_id

An internal hash code for the object based on its identity.
fun output

core :: Object :: output

Display self on stdout (debug only).
intern fun output_class_name

core :: Object :: output_class_name

Display class name on stdout (debug only).
fun parent: nullable XMLEntity

dom :: XMLEntity :: parent

Optional parent of self
fun parent=(e: XMLEntity)

dom :: XMLEntity :: parent=

Sets the parent of self to e
fun serialization_hash: Int

core :: Object :: serialization_hash

Hash value use for serialization
intern fun sys: Sys

core :: Object :: sys

Return the global sys object, the only instance of the Sys class.
fun tag_name: String

dom :: XMLTag :: tag_name

The name of the tag
protected fun tag_name=(tag_name: String)

dom :: XMLTag :: tag_name=

The name of the tag
abstract fun to_jvalue(env: JniEnv): JValue

core :: Object :: to_jvalue

fun to_s: String

core :: Object :: to_s

User readable representation of self.
package_diagram dom::XMLAttrTag XMLAttrTag dom::XMLTag XMLTag dom::XMLAttrTag->dom::XMLTag dom::XMLEntity XMLEntity dom::XMLTag->dom::XMLEntity ...dom::XMLEntity ... ...dom::XMLEntity->dom::XMLEntity dom::XMLOnelinerTag XMLOnelinerTag dom::XMLOnelinerTag->dom::XMLAttrTag dom::XMLStartTag XMLStartTag dom::XMLStartTag->dom::XMLAttrTag dom::XMLPrologTag XMLPrologTag dom::XMLPrologTag->dom::XMLAttrTag

Ancestors

interface Object

core :: Object

The root of the class hierarchy.
abstract class XMLEntity

dom :: XMLEntity

Any kind of XML Entity

Parents

abstract class XMLTag

dom :: XMLTag

A Tag is a node in a DOM tree

Children

class XMLOnelinerTag

dom :: XMLOnelinerTag

One-liner XML Tag (Ends with />)
class XMLPrologTag

dom :: XMLPrologTag

Any prolog style-Tag (starting with <?xml)
class XMLStartTag

dom :: XMLStartTag

A (potentially) multi-line spanning XML Tag start

Class definitions

dom $ XMLAttrTag
# Any kind of XML tag with attributes
abstract class XMLAttrTag
	super XMLTag

	# List of attributes in a Tag
	var attributes: Array[XMLAttribute]
end
lib/dom/xml_entities.nit:165,1--171,3

dom :: dom $ XMLAttrTag
redef class XMLAttrTag

	# Attributes as a map (ignoring malformed attributes)
	#
	# ~~~
	# var xml = """
	# <student first="Snow" last="Man"/>
	# """.to_xml
	#
	# var attributes = xml["student"].first.as(XMLAttrTag).attributes_to_map
	# assert attributes.join(", ", ":") == "first:Snow, last:Man"
	# ~~~
	fun attributes_to_map: Map[String, String]
	do
		var m = new Map[String, String]
		for a in attributes do
			if a isa XMLStringAttr then
				m[a.name] = a.value
			end
		end
		return m
	end
end
lib/dom/dom.nit:71,1--93,3