aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.Scripting/ExpressionGenerator.cs
diff options
context:
space:
mode:
authorRoy Ben Shabat <Roy@twine-s.com>2020-12-30 15:12:05 +0000
committerRoy Ben Shabat <Roy@twine-s.com>2020-12-30 15:12:05 +0000
commitb88a5d8fbfb4da46ec0e8f64b79fd83013a9de38 (patch)
treeea725abc39def99a755b041c13cba1fe0d594ddc /Software/Visual_Studio/Tango.Scripting/ExpressionGenerator.cs
parent1bdcaa9f51303bbff682507f31fb3b4414692ca4 (diff)
parentd33c19b3ac6803de4b5c8d475832efef131c1a45 (diff)
downloadTango-b88a5d8fbfb4da46ec0e8f64b79fd83013a9de38.tar.gz
Tango-b88a5d8fbfb4da46ec0e8f64b79fd83013a9de38.zip
Merged PR 6: Revert "Hope it is fine"
Revert "Hope it is fine" Reverted commit `1344a54c`.
Diffstat (limited to 'Software/Visual_Studio/Tango.Scripting/ExpressionGenerator.cs')
-rw-r--r--Software/Visual_Studio/Tango.Scripting/ExpressionGenerator.cs22
1 files changed, 22 insertions, 0 deletions
diff --git a/Software/Visual_Studio/Tango.Scripting/ExpressionGenerator.cs b/Software/Visual_Studio/Tango.Scripting/ExpressionGenerator.cs
new file mode 100644
index 000000000..8db917a10
--- /dev/null
+++ b/Software/Visual_Studio/Tango.Scripting/ExpressionGenerator.cs
@@ -0,0 +1,22 @@
+using Microsoft.CodeAnalysis.CSharp.Scripting;
+using Microsoft.CodeAnalysis.Scripting;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Linq.Expressions;
+using System.Reflection;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Tango.Scripting
+{
+ public static class ExpressionGenerator
+ {
+ public static Func<T, bool> GenerateExpression<T>(String body, params Assembly[] assemblies)
+ {
+ var options = ScriptOptions.Default.AddReferences(assemblies);
+ Func<T, bool> func = CSharpScript.EvaluateAsync<Func<T, bool>>(body, options).Result;
+ return func;
+ }
+ }
+}