Generates debug information for lambdas in an expression tree.
Esempio n. 1
0
		public static Delegate Compile (LambdaExpression lambda, DebugInfoGenerator debugInfoGenerator)
		{
#if MONO_INTERPRETER
			return lambda.LightCompile ();
#else			
			throw new NotSupportedException ("System.Linq.Expression interpreter is missing");
#endif
		}
 private void CompileToMethodInternal(MethodBuilder method, DebugInfoGenerator debugInfoGenerator)
 {
     ContractUtils.RequiresNotNull(method, "method");
     ContractUtils.Requires(method.IsStatic, "method");
     TypeBuilder declaringType = method.DeclaringType as TypeBuilder;
     if (declaringType == null)
     {
         throw Error.MethodBuilderDoesNotHaveTypeBuilder();
     }
     LambdaCompiler.Compile(this, method, debugInfoGenerator);
 }
 public void CompileToMethod(MethodBuilder method, DebugInfoGenerator debugInfoGenerator)
 {
     ContractUtils.RequiresNotNull(debugInfoGenerator, "debugInfoGenerator");
     this.CompileToMethodInternal(method, debugInfoGenerator);
 }
 public Delegate Compile(DebugInfoGenerator debugInfoGenerator)
 {
     ContractUtils.RequiresNotNull(debugInfoGenerator, "debugInfoGenerator");
     return LambdaCompiler.Compile(this, debugInfoGenerator);
 }
 //
 // Summary:
 //     Compiles the lambda into a method definition and custom debug information.
 //
 // Parameters:
 //   method:
 //     A System.Reflection.Emit.MethodBuilder which will be used to hold the lambda's
 //     IL.
 //
 //   debugInfoGenerator:
 //     Debugging information generator used by the compiler to mark sequence points
 //     and annotate local variables.
 public void CompileToMethod(MethodBuilder method, DebugInfoGenerator debugInfoGenerator)
 {
   Contract.Requires(method != null);
   Contract.Requires(method.IsStatic);
   Contract.Requires(debugInfoGenerator != null);
 }
 //
 // Summary:
 //     Produces a delegate that represents the lambda expression.
 //
 // Parameters:
 //   debugInfoGenerator:
 //     Debugging information generator used by the compiler to mark sequence points
 //     and annotate local variables.
 //
 // Returns:
 //     A delegate containing the compiled version of the lambda.
 public Delegate Compile(DebugInfoGenerator debugInfoGenerator)
 {
   Contract.Requires(debugInfoGenerator != null);
   Contract.Ensures(Contract.Result<Delegate>() != null);
   return default(Delegate);
 }
Esempio n. 7
0
		public void CompileToMethod (MethodBuilder method, DebugInfoGenerator debugInfoGenerator)
		{
			CompileToMethod (method);
		}