Resolve the name name in the scope containing ctx, assuming compiler
version version. If inclusive is true, then if ctx itself is a scope,
lookup inside of it as well. (e.g. if ctx is the ContractDefinition
corresponding to contract { uint x; }, calling resolveAny("x", node, "0.5.0", true) would return the state var X, and resolveAny("x", node, "0.5.0", false) would return undefined.).
Note that name can be an identifier path (e.g A.B.C).
We return a set, since in the case where name resolves to a callable
(function/public state var) or event, there could be multiple
functions/events with the same name but different arguments. In all other
cases the returned set should have either 0 or 1 elements.
Resolve the name
name
in the scope containingctx
, assuming compiler versionversion
. Ifinclusive
is true, then ifctx
itself is a scope, lookup inside of it as well. (e.g. if ctx is theContractDefinition
corresponding tocontract { uint x; }
, callingresolveAny("x", node, "0.5.0", true)
would return the state var X, andresolveAny("x", node, "0.5.0", false)
would return undefined.).Note that
name
can be an identifier path (e.gA.B.C
).We return a set, since in the case where
name
resolves to a callable (function/public state var) or event, there could be multiple functions/events with the same name but different arguments. In all other cases the returned set should have either 0 or 1 elements.