public ForLoopILCode(ILCodeParameter initialValue, ILGenerationMethodHandler<ILCodeParameter> conditionHandler, ILGenerationMethodHandler<ILCodeParameter> bodyHandler, ILCodeParameter increment) { if (initialValue.ParameterType != increment.ParameterType) throw new ArgumentException("The type of the initial value and the increment value must match"); _initialValue = initialValue; _increment = increment; _conditionHandler = new DelegatedILHandler<ILCodeParameter>(conditionHandler); _bodyHandler = new DelegatedILHandler<ILCodeParameter>(bodyHandler); }
public ILForLoopSnippet(ILPointer initialValue, ILGenerationMethodHandler <ILPointer> conditionHandler, ILGenerationMethodHandler <ILPointer> bodyHandler, ILPointer increment) { if (initialValue.Type != increment.Type) { throw new ArgumentException("The type of the initial value and the increment value must match"); } _initialValue = initialValue; _increment = increment; _conditionHandler = new DelegatedILHandler <ILPointer>(conditionHandler); _bodyHandler = new DelegatedILHandler <ILPointer>(bodyHandler); }
public ILEnumerateSnippet(ILPointer enumerable, ILGenerationMethodHandler <ILPointer> iterateBody) { _enumerable = enumerable; _iterateBody = new DelegatedILHandler <ILPointer>(iterateBody); }
public ILDelegatedPointer(Type parameterType, ILGenerationMethodHandler valueLoader, ILGenerationMethodHandler valueAddressLoader) { Type = parameterType; _valueLoader = valueLoader; _valueAddressLoader = valueAddressLoader; }
public ILDelegatedPointer(Type parameterType, ILGenerationMethodHandler valueLoader) : this(parameterType, valueLoader, null) { }
public void WhileLoop(ILGenerationMethodHandler conditionHandler, ILGenerationMethodHandler bodyHandler) { _il.Generate(new WhileLoopILCode(conditionHandler, bodyHandler)); }
public WhileLoopILCode(ILGenerationMethodHandler conditionHandler, ILGenerationMethodHandler bodyHandler) { _conditionHandler = new DelegatedILHandler(conditionHandler); _bodyHandler = new DelegatedILHandler(bodyHandler); }
public ILWhileLoopSnippet(ILGenerationMethodHandler conditionHandler, ILGenerationMethodHandler bodyHandler) { _conditionHandler = new DelegatedILHandler(conditionHandler); _bodyHandler = new DelegatedILHandler(bodyHandler); }
public DelegatedILHandler(ILGenerationMethodHandler <T> handler, ILGenerationHandler <T> parameterlessHandler) { _handler = handler; _parameterlessHandler = parameterlessHandler; }
public DelegatedILHandler(ILGenerationMethodHandler <T> handler) : this(handler, null) { }
public static void WhileLoop(this ILGenerator il, ILGenerationMethodHandler conditionHandler, ILGenerationMethodHandler bodyHandler) { il.Generate(new ILWhileLoopSnippet(conditionHandler, bodyHandler)); }
public static void Enumerate(this ILGenerator il, ILPointer enumerable, ILGenerationMethodHandler <ILPointer> iterateBody) { il.Generate(new ILEnumerateSnippet(enumerable, iterateBody)); }
public ILCodeParameterDelegatable(Type parameterType, ILGenerationMethodHandler valueLoader, ILGenerationMethodHandler valueAddressLoader) { _parameterType = parameterType; _valueLoader = valueLoader; _valueAddressLoader = valueAddressLoader; }
public ILCodeParameterDelegatable(Type parameterType, ILGenerationMethodHandler valueLoader) : this(parameterType, valueLoader, null) { }