本文整理汇总了C#中IfStatementSyntax.Validate方法的典型用法代码示例。如果您正苦于以下问题:C# IfStatementSyntax.Validate方法的具体用法?C# IfStatementSyntax.Validate怎么用?C# IfStatementSyntax.Validate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IfStatementSyntax
的用法示例。
在下文中一共展示了IfStatementSyntax.Validate方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: VisitIfStatement
public void VisitIfStatement(IfStatementSyntax node)
{
if (node == null)
throw new ArgumentNullException("node");
node.Validate();
bool parentIsElse = node.Parent is ElseClauseSyntax;
if (
parentIsElse &&
(node.LeadingTrivia.Count > 0 || node.TrailingTrivia.Count > 0)
) {
throw new CSharpSyntaxException(String.Format(
"Trivia on else if node '{0}' is not supported",
node
));
}
WriteLeadingTrivia(node);
if (
!_writer.Configuration.Other.Other.SpecialElseIfTreatment ||
!parentIsElse
)
_writer.WriteIndent();
_writer.WriteKeyword(PrinterKeyword.If);
if (_writer.Configuration.Spaces.BeforeParentheses.IfParentheses)
_writer.WriteSpace();
_writer.WriteSyntax(Syntax.OpenParen);
if (_writer.Configuration.Spaces.WithinParentheses.IfParentheses)
_writer.WriteSpace();
_wrapCompound = _writer.Configuration.LineBreaksAndWrapping.LineWrapping.ForceChopCompoundConditionInIfStatement;
node.Condition.Accept(this);
_wrapCompound = false;
if (_writer.Configuration.Spaces.WithinParentheses.IfParentheses)
_writer.WriteSpace();
_writer.WriteSyntax(Syntax.CloseParen);
bool noNewline =
node.Else != null &&
!_writer.Configuration.LineBreaksAndWrapping.PlaceOnNewLine.PlaceElseOnNewLine;
if (noNewline)
_writer.PushBraceFormatting(_writer.Configuration.BracesLayout.Other, false);
VisitBlockStatement(node.Statement);
if (noNewline)
{
_writer.PopBraceFormatting();
_writer.WriteSpace();
}
else if (node.Else != null)
{
_writer.WriteIndent();
}
if (node.Else != null)
node.Else.Accept(this);
WriteTrailingTrivia(node);
}