If the reference is only effective, if, for example, an if-then-else condition is true, this references the root of the if
.
As a hacky intermediate solution (until we have pointer-analysis), an empty array may indicate a maybe
which is due to pointer access (e.g., in a[x] <- 3
).
Readonly
nameName the reference is identified by (e.g., the name of the variable), undefined if the reference is "artificial" (e.g., anonymous)
Readonly
nodeNode which represents the reference in the AST
Readonly
typeType of the reference to be resolved
Something like
a
inb <- a
. Without any surrounding information,a
will produce the identifier referencea
. Similarly,b
will create a reference.