Beispiel #1
0
 public MixinEvaluationResult(MixinDefinition mixin, MixinCall call, Scope closure, MixinGuardScope guardScope)
 {
     this.mixin      = mixin;
     this.call       = call;
     this.closure    = closure;
     this.guardScope = guardScope;
 }
Beispiel #2
0
        protected override IEnumerable <LessNode> EvaluateCore(EvaluationContext context)
        {
            var call = new MixinCall(Selector.EvaluateSingle <Selector>(context), arguments, Important);

            foreach (var mixinResult in context.CurrentScope.ResolveMatchingMixins(call))
            {
                foreach (var evaluationResult in mixinResult.Evaluate(context).Cast <Statement>())
                {
                    if (Important)
                    {
                        yield return(evaluationResult.ForceImportant());
                    }
                    else
                    {
                        yield return(evaluationResult);
                    }
                }
            }
        }