Browse Source

Applied a similiar handling for field initializers than for the binary

operator line breaks.
newNRvisualizers
mike 14 years ago
parent
commit
c1a777b828
  1. 43
      ICSharpCode.NRefactory.CSharp/Formatter/AstFormattingVisitor.cs

43
ICSharpCode.NRefactory.CSharp/Formatter/AstFormattingVisitor.cs

@ -528,6 +528,17 @@ namespace ICSharpCode.NRefactory.CSharp
} else if (IsMember (eventDeclaration.NextSibling)) { } else if (IsMember (eventDeclaration.NextSibling)) {
EnsureBlankLinesAfter (eventDeclaration, policy.BlankLinesBetweenMembers); EnsureBlankLinesAfter (eventDeclaration, policy.BlankLinesBetweenMembers);
} }
var lastLoc = eventDeclaration.StartLocation;
IndentLevel++;
foreach (var initializer in eventDeclaration.Variables) {
if (lastLoc.Line != initializer.StartLocation.Line) {
FixStatementIndentation (initializer.StartLocation);
lastLoc = initializer.StartLocation;
}
initializer.AcceptVisitor (this);
}
IndentLevel--;
} }
public override void VisitAccessor (Accessor accessor) public override void VisitAccessor (Accessor accessor)
@ -545,7 +556,17 @@ namespace ICSharpCode.NRefactory.CSharp
} else if (IsMember (fieldDeclaration.NextSibling)) { } else if (IsMember (fieldDeclaration.NextSibling)) {
EnsureBlankLinesAfter (fieldDeclaration, policy.BlankLinesBetweenMembers); EnsureBlankLinesAfter (fieldDeclaration, policy.BlankLinesBetweenMembers);
} }
base.VisitFieldDeclaration (fieldDeclaration);
var lastLoc = fieldDeclaration.StartLocation;
IndentLevel++;
foreach (var initializer in fieldDeclaration.Variables) {
if (lastLoc.Line != initializer.StartLocation.Line) {
FixStatementIndentation (initializer.StartLocation);
lastLoc = initializer.StartLocation;
}
initializer.AcceptVisitor (this);
}
IndentLevel--;
} }
public override void VisitFixedFieldDeclaration (FixedFieldDeclaration fixedFieldDeclaration) public override void VisitFixedFieldDeclaration (FixedFieldDeclaration fixedFieldDeclaration)
@ -557,7 +578,17 @@ namespace ICSharpCode.NRefactory.CSharp
} else if (IsMember (fixedFieldDeclaration.NextSibling)) { } else if (IsMember (fixedFieldDeclaration.NextSibling)) {
EnsureBlankLinesAfter (fixedFieldDeclaration, policy.BlankLinesBetweenMembers); EnsureBlankLinesAfter (fixedFieldDeclaration, policy.BlankLinesBetweenMembers);
} }
base.VisitFixedFieldDeclaration (fixedFieldDeclaration);
var lastLoc = fixedFieldDeclaration.StartLocation;
IndentLevel++;
foreach (var initializer in fixedFieldDeclaration.Variables) {
if (lastLoc.Line != initializer.StartLocation.Line) {
FixStatementIndentation (initializer.StartLocation);
lastLoc = initializer.StartLocation;
}
initializer.AcceptVisitor (this);
}
IndentLevel--;
} }
public override void VisitEnumMemberDeclaration (EnumMemberDeclaration enumMemberDeclaration) public override void VisitEnumMemberDeclaration (EnumMemberDeclaration enumMemberDeclaration)
@ -1246,9 +1277,17 @@ namespace ICSharpCode.NRefactory.CSharp
} else { } else {
ForceSpacesAfter (variableDeclarationStatement.Type, true); ForceSpacesAfter (variableDeclarationStatement.Type, true);
} }
var lastLoc = variableDeclarationStatement.StartLocation;
IndentLevel++;
foreach (var initializer in variableDeclarationStatement.Variables) { foreach (var initializer in variableDeclarationStatement.Variables) {
if (lastLoc.Line != initializer.StartLocation.Line) {
FixStatementIndentation (initializer.StartLocation);
lastLoc = initializer.StartLocation;
}
initializer.AcceptVisitor (this); initializer.AcceptVisitor (this);
} }
IndentLevel--;
FormatCommas (variableDeclarationStatement, policy.SpaceBeforeLocalVariableDeclarationComma, policy.SpaceAfterLocalVariableDeclarationComma); FormatCommas (variableDeclarationStatement, policy.SpaceBeforeLocalVariableDeclarationComma, policy.SpaceAfterLocalVariableDeclarationComma);
FixSemicolon (variableDeclarationStatement.SemicolonToken); FixSemicolon (variableDeclarationStatement.SemicolonToken);
} }

Loading…
Cancel
Save