SymbolicXMLBuilder

dotty.tools.dotc.parsing.xml.SymbolicXMLBuilder
class SymbolicXMLBuilder(parser: Parser, preserveWS: Boolean)(using x$3: Context)

This class builds instance of Tree that represent XML.

Note from martin: This needs to have its position info reworked. I don't understand exactly what's done here. To make validation pass, I set many positions to be transparent. Not sure this is a good idea for navigating XML trees in the IDE but it's the best I can do right now. If someone who understands this part better wants to give it a shot, please do!

Attributes

Authors:

Burak Emir

Version

1.0

Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes

Members list

Value members

Concrete methods

def charData(span: Span, txt: String): Tree
def comment(span: Span, text: String): Tree
def element(span: Span, qname: String, attrMap: Map[String, Tree], empty: Boolean, args: Seq[Tree]): Tree
final def entityRef(span: Span, n: String): Tree
def group(span: Span, args: Seq[Tree]): Tree

Various node constructions.

Various node constructions.

Attributes

def makeText1(txt: Tree): Tree
def makeTextPat(txt: Tree): Apply
def makeXMLpat(span: Span, n: String, args: Seq[Tree]): Tree

Attributes

def makeXMLseq(span: Span, args: Seq[Tree]): Block

could optimize if args.length == 0, args.length == 1 AND args(0) is <: Node.

could optimize if args.length == 0, args.length == 1 AND args(0) is <: Node.

Attributes

def parseAttribute(span: Span, s: String): Tree
def procInstr(span: Span, target: String, txt: String): Tree

Returns (Some(prefix) | None, rest) based on position of ':'

Returns (Some(prefix) | None, rest) based on position of ':'

Attributes

final def text(span: Span, txt: String): Tree
def unparsed(span: Span, str: String): Tree