Expression 클래스
정의
값을 생성 하기 위해 분석 하거나 평가할 수 있는 식입니다.An expression which can be analyzed or evaluated to produce a value.
public class Expression
type Expression = class
Public Class Expression
- 상속
-
Expression
- 파생
설명
이는 다양 한 기본 제공 함수를 지 원하는 개방형 래퍼를 제공 하며 런타임에 확장 될 수도 있습니다.This provides an open-ended wrapper that supports a number of built-in functions and can also be extended at runtime. 또한 예외를 사용 하지 않아야 하는 식 및 계산의 정확성에 대 한 유효성 검사를 지원 합니다.It also supports validation of the correctness of an expression and evaluation that should be exception free.
생성자
Expression(ExpressionEvaluator, Expression[]) |
Expression 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the Expression class. 식 생성자.Expression constructor. |
Expression(String, Expression[]) |
Expression 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the Expression class. 기본 제공 식 생성자입니다.Built-in expression constructor. |
필드
Functions |
Function = expressionevaluator의 사전입니다 > .Dictionary of function => ExpressionEvaluator. |
속성
Children |
자식 식을 가져오거나 설정 합니다.Gets or sets children expressions. |
Evaluator |
식 계산기를 가져옵니다.Gets expression evaluator. |
ReturnType |
식 계산의 예상 결과를 가져옵니다.Gets expected result of evaluating expression. |
Type |
식의 유형을 가져옵니다.Gets type of expression. |
메서드
Accessor(String, Expression) |
속성 접근자를 생성 하 고 유효성을 검사 합니다.Construct and validate a property accessor. |
AndExpression(Expression[]) |
And 식을 생성 하 고 유효성을 검사 합니다.Construct and validate an And expression. |
ConstantExpression(Object) |
상수 식을 생성 합니다.Construct a constant expression. |
DeepEquals(Expression) |
식 사이에 깊은 같음을 수행 합니다.Do a deep equality between expressions. |
EqualsExpression(Expression[]) |
Equals 식을 생성 하 고 유효성을 검사 합니다.Construct and validate an Equals expression. |
LambaExpression(EvaluateExpressionDelegate) |
에서 식을 생성 EvaluateExpressionDelegate 합니다.Construct an expression from a EvaluateExpressionDelegate. |
Lambda(Func<Object,Object>) |
상태에 대 한 람다 식에서 식을 생성 합니다.Construct an expression from a lambda expression over the state. |
Lookup(String) |
이름을 기준으로 ExpressionEvaluator (함수)를 조회 합니다.Lookup a ExpressionEvaluator (function) by name. |
MakeExpression(ExpressionEvaluator, Expression[]) |
식을 만들고 유효성을 검사 합니다.Make an expression and validate it. |
MakeExpression(String, Expression[]) |
식을 만들고 유효성을 검사 합니다.Make an expression and validate it. |
NotExpression(Expression) |
Not 식의 생성 및 유효성 검사Construct and validate a Not expression. |
OrExpression(Expression[]) |
또는 식을 생성 하 고 유효성을 검사 합니다.Construct and validate an Or expression. |
Parse(String, EvaluatorLookup) |
식 문자열을 식 개체로 구문 분석 합니다.Parse an expression string into an expression object. |
References() |
메모리에 대 한 정적 참조 경로를 반환 합니다.Return the static reference paths to memory. |
ReferenceWalk(Expression, Func<Expression,Boolean>) |
식에서 정적 메모리 참조를 식별 하기 위한 탐색 함수입니다.Walking function for identifying static memory references in an expression. |
SetPathToValue(Expression, Expression) |
을 생성 하 고 유효성을 검사 하 여 속성 식을 값 식으로 설정 합니다.Construct and validate an Set a property expression to a value expression. |
SetPathToValue(Expression, Object) |
을 생성 하 고 유효성을 검사 하 여 속성 식을 값 식으로 설정 합니다.Construct and validate an Set a property expression to a value expression. |
ToString() |
현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object. |
TryEvaluate(IMemory, Options) |
식을 계산 합니다.Evaluate the expression. |
TryEvaluate(Object, Options) |
식을 계산 합니다.Evaluate the expression. |
TryEvaluate<T>(IMemory, Options) |
식을 계산 합니다.Evaluate the expression. |
TryEvaluate<T>(Object, Options) |
식을 계산 합니다.Evaluate the expression. |
Validate() |
직접 실행 식의 유효성을 검사 합니다.Validate immediate expression. |
ValidateTree() |
식 트리의 유효성을 재귀적으로 검사 합니다.Recursively validate the expression tree. |
연산자
Implicit(String to Expression) |
문자열을 식 속성에 암시적으로 할당할 수 있습니다.allow a string to be implicitly assigned to an expression property. |
확장 메서드
DisjunctiveNormalForm(Expression) |
분리 normal 형식으로 식을 다시 작성 합니다.Rewrite expression into disjunctive normal form. |
PushDownNot(Expression) |
나뭇잎으로 푸시 하지 않고 식을 다시 작성 합니다.Rewrite the expression by pushing not down to the leaves. |