public static ExpressionSyntax ParseExpression(string text) { if (text == null) { throw new ArgumentNullException(nameof(text)); } var tree = SyntaxTree.ParseExpression(text); return((ExpressionSyntax)tree.Root.Root); }
private void EnsureCompiled() { if (_expressionEvaluator != null) { return; } var syntaxTree = SyntaxTree.ParseExpression(Text); var compilation = Compilation.Create(DataContext, syntaxTree); var compiledQuery = compilation.Compile(); var expressionEvaluator = compiledQuery.CreateExpressionEvaluator(); Interlocked.CompareExchange(ref _expressionEvaluator, expressionEvaluator, null); }
public static Compilation CreateExpression(string text) { var syntaxTree = SyntaxTree.ParseExpression(text); return(Compilation.Create(DataContext, syntaxTree)); }