C# 클래스 ExpressiveAnnotations.Analysis.Expr

An Expression wrapper.
Provides some additional type checks and unburdens parser form this excessive logic.
파일 보기 프로젝트 열기: jwaliszko/ExpressiveAnnotations

Private Properties

프로퍼티 타입 설명
MakeInvalidTypeError string
MakeInvalidTypesError string

공개 메소드들

메소드 설명
Add ( Expression arg1, Expression arg2, Token oper ) : Expression
And ( Expression arg1, Expression arg2, Token oper ) : Expression
AndAlso ( Expression arg1, Expression arg2, Token oper ) : Expression
Condition ( Expression arg1, Expression arg2, Expression arg3, Token start, Token oper ) : Expression
Divide ( Expression arg1, Expression arg2, Token oper ) : Expression
Equal ( Expression arg1, Expression arg2, Token oper ) : Expression
ExclusiveOr ( Expression arg1, Expression arg2, Token oper ) : Expression
Expr ( string expression ) : System
GreaterThan ( Expression arg1, Expression arg2, Token oper ) : Expression
GreaterThanOrEqual ( Expression arg1, Expression arg2, Token oper ) : Expression
LeftShift ( Expression arg1, Expression arg2, Token oper ) : Expression
LessThan ( Expression arg1, Expression arg2, Token oper ) : Expression
LessThanOrEqual ( Expression arg1, Expression arg2, Token oper ) : Expression
Modulo ( Expression arg1, Expression arg2, Token oper ) : Expression
Multiply ( Expression arg1, Expression arg2, Token oper ) : Expression
Negate ( Expression arg, Token oper ) : Expression
Not ( Expression arg, Token oper ) : Expression
NotEqual ( Expression arg1, Expression arg2, Token oper ) : Expression
OnesComplement ( Expression arg, Token oper ) : Expression
Or ( Expression arg1, Expression arg2, Token oper ) : Expression
OrElse ( Expression arg1, Expression arg2, Token oper ) : Expression
RightShift ( Expression arg1, Expression arg2, Token oper ) : Expression
Subtract ( Expression arg1, Expression arg2, Token oper ) : Expression
UnaryPlus ( Expression arg, Token oper ) : Expression

비공개 메소드들

메소드 설명
MakeInvalidTypeError ( Token oper, Type type ) : string
MakeInvalidTypesError ( Token oper, Type type1, Type type2 ) : string

메소드 상세

Add() 공개 메소드

public Add ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

And() 공개 메소드

public And ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

AndAlso() 공개 메소드

public AndAlso ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

Condition() 공개 메소드

public Condition ( Expression arg1, Expression arg2, Expression arg3, Token start, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
arg3 System.Linq.Expressions.Expression
start Token
oper Token
리턴 System.Linq.Expressions.Expression

Divide() 공개 메소드

public Divide ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

Equal() 공개 메소드

public Equal ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

ExclusiveOr() 공개 메소드

public ExclusiveOr ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

Expr() 공개 메소드

public Expr ( string expression ) : System
expression string
리턴 System

GreaterThan() 공개 메소드

public GreaterThan ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

GreaterThanOrEqual() 공개 메소드

public GreaterThanOrEqual ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

LeftShift() 공개 메소드

public LeftShift ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

LessThan() 공개 메소드

public LessThan ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

LessThanOrEqual() 공개 메소드

public LessThanOrEqual ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

Modulo() 공개 메소드

public Modulo ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

Multiply() 공개 메소드

public Multiply ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

Negate() 공개 메소드

public Negate ( Expression arg, Token oper ) : Expression
arg System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

Not() 공개 메소드

public Not ( Expression arg, Token oper ) : Expression
arg System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

NotEqual() 공개 메소드

public NotEqual ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

OnesComplement() 공개 메소드

public OnesComplement ( Expression arg, Token oper ) : Expression
arg System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

Or() 공개 메소드

public Or ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

OrElse() 공개 메소드

public OrElse ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

RightShift() 공개 메소드

public RightShift ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

Subtract() 공개 메소드

public Subtract ( Expression arg1, Expression arg2, Token oper ) : Expression
arg1 System.Linq.Expressions.Expression
arg2 System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression

UnaryPlus() 공개 메소드

public UnaryPlus ( Expression arg, Token oper ) : Expression
arg System.Linq.Expressions.Expression
oper Token
리턴 System.Linq.Expressions.Expression