本文整理汇总了C#中CodeBinaryOperatorType类的典型用法代码示例。如果您正苦于以下问题:C#CodeBinaryOperatorType类的具体用法?C#CodeBinaryOperatorType怎么用?C#CodeBinaryOperatorType使用的例子?这里精选的类代码示例或许可以为您提供帮助。
示例1:DoBoolean
privatevoidDoBoolean(BooleanExpressionexpression,CodeBinaryOperatorTypeoperation)
{
varleftArgs=VisitChild(expression.Left,newCodeDomArg(){Scope=_codeStack.Peek().Scope});
varrightArgs=VisitChild(expression.Right,newCodeDomArg(){Scope=_codeStack.Peek().Scope});
TypeleftType=Type.GetType(leftArgs.Scope.CodeDomReference.BaseType);
TyperightType=Type.GetType(rightArgs.Scope.CodeDomReference.BaseType);
if(leftType!=rightType)
{
if(leftType==typeof(string))
{
varprimitive=TablePrimitive.FromType(rightType);
leftArgs.CodeExpression=primitive.ToNative(leftArgs.CodeExpression);
}
elseif(rightType==typeof(string))
{
varprimitive=TablePrimitive.FromType(leftType);
rightArgs.CodeExpression=primitive.ToNative(rightArgs.CodeExpression);
}
}
if(leftArgs.Tag!=null)
_codeStack.Peek().Tag=leftArgs.Tag;
if(rightArgs.Tag!=null)
_codeStack.Peek().Tag=rightArgs.Tag;
_codeStack.Peek().CodeExpression=newCodeBinaryOperatorExpression(leftArgs.CodeExpression,operation,rightArgs.CodeExpression);
}
原文链接:
http://www.jxszl.com/biancheng/C/556793.html