The reverse path from node from
to the node that closest encloses position pos
,
or Nil
if no such path exists.
The reverse path from node from
to the node that closest encloses position pos
,
or Nil
if no such path exists. If a non-empty path is returned it starts with
the node closest enclosing pos
and ends with from
.
The untyped tree corresponding to typed tree tree
in the compilation
unit specified by ctx
The reverse part of the untyped root of the compilation unit of ctx
to
position pos
.
The reverse path of untyped trees starting with a tree that closest matches
tree
and ending in the untyped tree at the root of the compilation unit
specified by ctx
.
The reverse path of untyped trees starting with a tree that closest matches
tree
and ending in the untyped tree at the root of the compilation unit
specified by ctx
.
If true
, the path must start with a node that exactly
matches tree
, or Nil
is returned.
If false
the path might start with a node enclosing
the logical position of tree
.
Note: A complication concerns member definitions. ValDefs and DefDefs
have after desugaring a position that spans just the name of the symbol being
defined and nothing else. So we look instead for an untyped tree approximating the
envelope of the definition, and declare success if we find another DefTree.
Utility functions to go from typed to untyped ASTs