internal void Evaluate(Template template, out Context context, out Hash registers, out IEnumerable<Type> filters)
{
if (Context != null)
{
context = Context;
registers = null;
filters = null;
return;
}
List<Hash> environments = new List<Hash>();
if (LocalVariables != null)
environments.Add(LocalVariables);
environments.Add(template.Assigns);
context = new Context(environments, template.InstanceAssigns, template.Registers, RethrowErrors);
context.ValueTypeTransformers = ValueTypeTransformers;
registers = Registers;
filters = Filters;
}