public static bool TryFindVariable(this NestedScope scope, string fullName, out Variable result)
 {
     return(scope.GetAspect <VariableSet>().TryFind(fullName, out result));
 }
 public static VariableInfo FirstVarOfName(this NestedScope scope, string variableName, IErrorCache errorCache)
 {
     return(scope.GetAspect <VariableSet>().FirstVarOfName(variableName, errorCache));
 }
 public static Variable FindVariable(this NestedScope scope, string fullName)
 {
     return(scope.GetAspect <VariableSet>().Find(fullName));
 }
 public static bool TryFindVariable(this NestedScope scope, VariableRef refName, out Variable result)
 {
     return(scope.GetAspect <VariableSet>().TryFind(refName, out result));
 }
 public static Variable FindVariable(this NestedScope scope, VariableRef refName)
 {
     return(scope.GetAspect <VariableSet>().Find(refName));
 }
 public static IEnumerable <Variable> Variables(this NestedScope scope, bool recurse = true)
 {
     return(!recurse
         ? scope.GetAspect <VariableSet>()
         : scope.Flatten().SelectMany(s => s.GetAspect <VariableSet>()));
 }
 public static NestedScope Store(this NestedScope scope, Variable variable)
 {
     scope.GetAspect <VariableSet>().Store(variable);
     return(scope);
 }