FastExpressionCompiler 3.3.4

FastExpressionCompiler is 10-40x times faster than Expression.Compile()

Showing the top 20 packages that depend on FastExpressionCompiler.

Packages Downloads
ExpressionToCodeLib
Generates valid, readable C# from an expression tree, and can annotate that code with runtime values. Useful for e.g. code generation and unit testing assertions.
35
ExpressionToCodeLib
Generates valid, readable C# from an expression tree, and can annotate that code with runtime values. Useful for e.g. code generation and unit testing assertions.
36
ExpressionToCodeLib
Generates valid, readable C# from an expression tree, and can annotate that code with runtime values. Useful for e.g. code generation and unit testing assertions.
37
ExpressionToCodeLib
Generates valid, readable C# from an expression tree, and can annotate that code with runtime values. Useful for e.g. code generation and unit testing assertions.
38
ExpressionToCodeLib
Generates valid, readable C# from an expression tree, and can annotate that code with runtime values. Useful for e.g. code generation and unit testing assertions.
40
ExpressionToCodeLib
Generates valid, readable C# from an expression tree, and can annotate that code with runtime values. Useful for e.g. code generation and unit testing assertions.
43
ExpressionToCodeLib
Generates valid, readable C# from an expression tree, and can annotate that code with runtime values. Useful for e.g. code generation and unit testing assertions.
49
ExpressionToCodeLib
Generates valid, readable C# from an expression tree, and can annotate that code with runtime values. Useful for e.g. code generation and unit testing assertions.
50
ExpressionToCodeLib
Generates valid, readable C# from an expression tree, and can annotate that code with runtime values. Useful for e.g. code generation and unit testing assertions.
56

## v3.3.4 Bug-fix release - fixed: #345 EmitCall is for the varargs method and should not be used for normal convention - fixed: #347 InvalidProgramException on compiling an expression that returns a record which implements IList - fixed: #349 Error when loading struct parameters closed by the nested lambda e.g. predicate in Linq - fixed: #355 Error with converting to/from signed/unsigned integers (Thanks to @TYoungSL for the PR!) - fixed: the C# output for if-else test condition, and inc/dec operations; and for label at the end of the lambda - fixed: ref assignment C# output - perf: Replace ILGenerator.Emit(OpCodes.Call, ..) with EmitMethodCall performance ## v3.3.3 Bug-fix release - fixed: #336 Method TryCompileBoundToFirstClosureParam is returning passed Type array to pool may cause undefined behavior - fixed: #337 Switch LightExpression.Expression.ToString from System.Expression.ToString pseudo-code to ToCSharpString - fixed: #338 InvocationExpression is not properly converted to System Expression via ToExpression for non-lambda expression - fixed: #341 Equality comparison between nullable and null inside Any produces incorrect compiled expression ## v3.3.2 Bug-fix release - fixed: #335 FastExpressionCompiler.LightExpressions - MemberInit has recursive calls ## v3.3.1 Optimization and bug-fix release - fixed: #333 AccessViolationException and other suspicious behaviour on invoking result of CompileFast() - optim: LightExpression.Parameter consumes less memory for the common standard types. ## v3.3.0 Feature and bug-fix release - added: #235 [GodMode] Expression to IL intrinsic - added: #325 Add LightExpression.NewNoByRefArgs overloads for performance - added: #327 Replace direct il.Emit(OpCodes.Call, ...) with EmitMethodCall - added: #329 Optimize special case compilation for New and Call with no arguments - added: #330 Optimize nested lambda ClosureInfo memory footprint - fixed: #324 The LightExpression.New of IEnumerable is recursive - fixed: #328 Fix the performance of TryEmitConvert to String

.NET Framework 4.5

.NET Standard 2.0

.NET Standard 2.1

  • No dependencies.

Version Downloads Last updated
5.3.0 38 06/13/2025
5.2.0 28 05/15/2025
5.2.0-preview-02 26 05/01/2025
5.2.0-preview-01 25 04/27/2025
5.1.1 30 04/04/2025
5.1.0 32 04/05/2025
5.0.3 26 04/05/2025
5.0.2 34 01/29/2025
5.0.1 32 12/29/2024
5.0.0 33 12/03/2024
4.2.2 46 11/14/2024
4.2.1 43 11/28/2024
4.2.0 42 05/28/2024
4.1.0 40 05/28/2024
4.0.2 36 05/28/2024
4.0.1 43 05/28/2024
4.0.0 34 05/28/2024
3.4.0-preview-01 38 05/28/2024
3.3.4 35 05/28/2024
3.3.3 48 03/13/2024
3.3.2 35 05/28/2024
3.3.1 41 05/28/2024
3.3.0 41 05/28/2024
3.2.2 42 05/28/2024
3.2.1 35 05/28/2024
3.2.0 37 05/28/2024
3.1.0 38 05/28/2024
3.1.0-preview-03 36 05/28/2024
3.1.0-preview-02 39 05/28/2024
3.1.0-preview-01 44 05/28/2024
3.0.6-preview-01 42 05/22/2024
3.0.5 40 05/28/2024
3.0.4 32 05/28/2024
3.0.3 41 05/28/2024
3.0.2 35 05/28/2024
3.0.1 37 05/22/2024
3.0.0 41 05/28/2024
3.0.0-preview-07 31 05/28/2024
3.0.0-preview-06 39 05/28/2024
3.0.0-preview-05 41 05/28/2024
3.0.0-preview-04 38 05/28/2024
3.0.0-preview-03 39 05/28/2024
3.0.0-preview-02 38 05/28/2024
3.0.0-preview-01 36 05/28/2024
2.0.0 35 05/28/2024
2.0.0-preview-03 45 05/28/2024
2.0.0-preview-02 43 05/28/2024
2.0.0-preview-01 45 05/28/2024
1.10.1 34 05/28/2024
1.10.0 35 05/28/2024
1.9.0 46 05/22/2024
1.8.0 42 05/22/2024
1.7.2 37 05/28/2024
1.7.1 35 05/22/2024
1.7.0 41 05/28/2024
1.6.0 31 05/28/2024
1.5.0 36 12/01/2024
1.4.0 48 05/28/2024
1.3.0 35 05/28/2024
1.2.2 37 05/28/2024
1.2.1 35 05/28/2024
1.2.0 40 05/28/2024
1.1.1 37 05/22/2024
1.1.0 36 05/28/2024
1.0.1 40 05/28/2024
1.0.0 41 05/28/2024
1.0.0-preview-04 36 05/28/2024
1.0.0-preview-03 42 05/28/2024
1.0.0-preview-02 41 05/22/2024
1.0.0-preview-01 40 05/28/2024