Ast

case class Ast(nodes: Seq[NewNode], edges: Seq[AstEdge], conditionEdges: Seq[AstEdge], refEdges: Seq[AstEdge], bindsEdges: Seq[AstEdge], receiverEdges: Seq[AstEdge], argEdges: Seq[AstEdge])
Companion:
object
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any

Value members

Concrete methods

def merge(other: Ast): Ast
def rightMostLeaf: Option[NewNode]
def root: Option[NewNode]
def subTreeCopy(node: AstNodeNew, argIndex: Int): Ast

Returns a deep copy of the sub tree rooted in node. If order is set, then the order and argumentIndex fields of the new root node are set to order.

Returns a deep copy of the sub tree rooted in node. If order is set, then the order and argumentIndex fields of the new root node are set to order.

def withArgEdge(src: NewNode, dst: NewNode): Ast
def withArgEdges(src: NewNode, dsts: Seq[NewNode]): Ast
def withBindsEdge(src: NewNode, dst: NewNode): Ast
def withBindsEdges(src: NewNode, dsts: List[NewNode]): Ast
def withChild(other: Ast): Ast

AST that results when adding other as a child to this AST. other is connected to this AST's root node.

AST that results when adding other as a child to this AST. other is connected to this AST's root node.

def withChildren(asts: Seq[Ast]): Ast

AST that results when adding all ASTs in asts as children, that is, connecting them to the root node of this AST.

AST that results when adding all ASTs in asts as children, that is, connecting them to the root node of this AST.

def withConditionEdge(src: NewNode, dst: NewNode): Ast
def withConditionEdges(src: NewNode, dsts: List[NewNode]): Ast
def withReceiverEdge(src: NewNode, dst: NewNode): Ast
def withReceiverEdges(src: NewNode, dsts: List[NewNode]): Ast
def withRefEdge(src: NewNode, dst: NewNode): Ast
def withRefEdges(src: NewNode, dsts: List[NewNode]): Ast

Inherited methods

def productElementNames: Iterator[String]
Inherited from:
Product
def productIterator: Iterator[Any]
Inherited from:
Product