private BuildLoopContext ( ITypeSymbol symbol ) : |
||
symbol | ITypeSymbol | |
return |
internal Context BuildLoopContext(ITypeSymbol symbol)
{
return new Context($"loopItem{LoopLevel}", symbol);
}
/// <summary> /// Will evaluate to a context inside a loop. Used for the context inside #each blocks /// </summary> /// <param name="state"></param> /// <returns></returns> internal Context EvaluateLoop(CompilationState state) { Context loopVariable; if (TryEvaluate(state, out loopVariable)) { var elementSymbol = loopVariable.Symbol.GetElementSymbol(); if (elementSymbol!=null) return state.BuildLoopContext(loopVariable.Symbol.GetElementSymbol()); } return null; }