Exemplo n.º 1
0
		protected override void GenerateCastExpression(CodeCastExpression expression)
		{
			TextWriter output = base.Output;
			if (expression.NeedsGrouping)
				output.Write("(");
			output.Write("cast(");
			this.OutputType(expression.TargetType);
			output.Write(")");
			// Casts can be chained.
			if (expression.Expression is CodeCastExpression)
				((CodeCastExpression)expression.Expression).NeedsGrouping = false;
			// CodeBinaryOperatorExpressions already generate their own parenthesis surrounding themself.
			base.GenerateExpression(expression.Expression);
			if (expression.NeedsGrouping)
				output.Write(")");
		}
Exemplo n.º 2
0
		protected override void GenerateCastExpression(CodeCastExpression expression)
		{
			// CLEANUP: This has been cleaned up so that the code it generates looks better, 
			//          it will also generate chained casts if it's able to.
			TextWriter output = base.Output;
			if (expression.NeedsGrouping)
				output.Write("(");
			output.Write("(");
			this.OutputType(expression.TargetType);
			output.Write(")");
			// Casts can be chained.
			if (expression.Expression is CodeCastExpression)
				((CodeCastExpression)expression.Expression).NeedsGrouping = false;
			// CodeBinaryOperatorExpressions already generate their own parenthesis surrounding themself.
			base.GenerateExpression(expression.Expression);
			if (expression.NeedsGrouping)
				output.Write(")");
		}