diff options
Diffstat (limited to 'tools/Sandcastle/Source/BuildAssembler/SyntaxComponents/CPlusPlusDeclarationSyntax.cs')
-rw-r--r-- | tools/Sandcastle/Source/BuildAssembler/SyntaxComponents/CPlusPlusDeclarationSyntax.cs | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/tools/Sandcastle/Source/BuildAssembler/SyntaxComponents/CPlusPlusDeclarationSyntax.cs b/tools/Sandcastle/Source/BuildAssembler/SyntaxComponents/CPlusPlusDeclarationSyntax.cs index 56c6316..98794c4 100644 --- a/tools/Sandcastle/Source/BuildAssembler/SyntaxComponents/CPlusPlusDeclarationSyntax.cs +++ b/tools/Sandcastle/Source/BuildAssembler/SyntaxComponents/CPlusPlusDeclarationSyntax.cs @@ -789,6 +789,7 @@ namespace Microsoft.Ddue.Tools { } private void WriteParameters (XPathNodeIterator parameters, bool multiline, SyntaxWriter writer) { + bool isVarargs = (bool)parameters.Current.Evaluate(apiIsVarargsExpression); while (parameters.MoveNext()) { XPathNavigator parameter = parameters.Current; @@ -815,9 +816,16 @@ namespace Microsoft.Ddue.Tools { writer.WriteString(" "); writer.WriteParameter(name); - if (parameters.CurrentPosition < parameters.Count) writer.WriteString(", "); + if (parameters.CurrentPosition < parameters.Count || isVarargs) writer.WriteString(", "); if (multiline) writer.WriteLine(); } + if (isVarargs) + { + if (multiline) writer.WriteString("\t"); + writer.WriteString("..."); + if (multiline) writer.WriteLine(); + } + } |