Splicer

dotty.tools.dotc.transform.Splicer$
object Splicer

Utility class to splice quoted expressions

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Splicer.type

Members list

Value members

Concrete methods

def checkEscapedVariables(tree: Tree, expansionOwner: Symbol)(using Context): Tree

Checks that no symbol that was generated within the macro expansion has an out of scope reference

Checks that no symbol that was generated within the macro expansion has an out of scope reference

Attributes

def checkValidMacroBody(tree: Tree)(using Context): Unit

Check that the Tree can be spliced. ${'{xyz}} becomes xyz and for $xyz the tree of xyz is interpreted for which the resulting expression is returned as a Tree

Check that the Tree can be spliced. ${'{xyz}} becomes xyz and for $xyz the tree of xyz is interpreted for which the resulting expression is returned as a Tree

See: Staging

Attributes

Is this the dummy owner of a macro expansion

Is this the dummy owner of a macro expansion

Attributes

def isMacroOwner(sym: Symbol)(using Context): Boolean

Is this the dummy owner of a macro expansion

Is this the dummy owner of a macro expansion

Attributes

def splice(tree: Tree, splicePos: SrcPos, spliceExpansionPos: SrcPos, classLoader: ClassLoader)(using Context): Tree

Splice the Tree for a Quoted expression. ${'{xyz}} becomes xyz and for $xyz the tree of xyz is interpreted for which the resulting expression is returned as a Tree

Splice the Tree for a Quoted expression. ${'{xyz}} becomes xyz and for $xyz the tree of xyz is interpreted for which the resulting expression is returned as a Tree

See: Staging

Attributes