summaryrefslogtreecommitdiff
path: root/cpp/src/IceUtil/OutputUtil.cpp
diff options
context:
space:
mode:
authorBernard Normier <bernard@zeroc.com>2019-04-22 18:12:41 -0400
committerBernard Normier <bernard@zeroc.com>2019-04-22 18:12:41 -0400
commit982e7db8cd1685b93df3ef333f74c8a6ea7f1667 (patch)
treeb5bb43b38da1f7a63d52e893065c0822e2c4c9e4 /cpp/src/IceUtil/OutputUtil.cpp
parentFix iOS warnings (diff)
downloadice-982e7db8cd1685b93df3ef333f74c8a6ea7f1667.tar.bz2
ice-982e7db8cd1685b93df3ef333f74c8a6ea7f1667.tar.xz
ice-982e7db8cd1685b93df3ef333f74c8a6ea7f1667.zip
Changed mapping for local classes to protocols
Diffstat (limited to 'cpp/src/IceUtil/OutputUtil.cpp')
-rw-r--r--cpp/src/IceUtil/OutputUtil.cpp38
1 files changed, 29 insertions, 9 deletions
diff --git a/cpp/src/IceUtil/OutputUtil.cpp b/cpp/src/IceUtil/OutputUtil.cpp
index 347c7bab905..05e39729f63 100644
--- a/cpp/src/IceUtil/OutputUtil.cpp
+++ b/cpp/src/IceUtil/OutputUtil.cpp
@@ -235,36 +235,43 @@ IceUtilInternal::OutputBase::operator!() const
// Output
// ----------------------------------------------------------------------
-IceUtilInternal::Output::Output(bool breakBeforeBlock) :
+IceUtilInternal::Output::Output(bool breakBeforeBlock, bool shortEmptyBlock) :
OutputBase(),
_blockStart("{"),
_blockEnd("}"),
_par(-1),
- _breakBeforeBlock(breakBeforeBlock)
+ _breakBeforeBlock(breakBeforeBlock),
+ _shortEmptyBlock(shortEmptyBlock),
+ _emptyBlock(false)
{
}
-IceUtilInternal::Output::Output(ostream& os, bool breakBeforeBlock) :
+IceUtilInternal::Output::Output(ostream& os, bool breakBeforeBlock, bool shortEmptyBlock) :
OutputBase(os),
_blockStart("{"),
_blockEnd("}"),
_par(-1),
- _breakBeforeBlock(breakBeforeBlock)
+ _breakBeforeBlock(breakBeforeBlock),
+ _shortEmptyBlock(shortEmptyBlock),
+ _emptyBlock(false)
{
}
-IceUtilInternal::Output::Output(const char* s, bool breakBeforeBlock) :
+IceUtilInternal::Output::Output(const char* s, bool breakBeforeBlock, bool shortEmptyBlock) :
OutputBase(s),
_blockStart("{"),
_blockEnd("}"),
_par(-1),
- _breakBeforeBlock(breakBeforeBlock)
+ _breakBeforeBlock(breakBeforeBlock),
+ _shortEmptyBlock(shortEmptyBlock),
+ _emptyBlock(false)
{
}
void
IceUtilInternal::Output::print(const string& s)
{
+ _emptyBlock = false;
if(_par >= 0)
{
if(++_par > 1) // No comma for the first parameter.
@@ -293,16 +300,28 @@ IceUtilInternal::Output::sb()
++_pos;
inc();
_separator = false;
+ _emptyBlock = true;
}
void
IceUtilInternal::Output::eb()
{
dec();
- if(_blockEnd.length())
+ if(_emptyBlock && _shortEmptyBlock)
{
- newline();
- _out << _blockEnd;
+ if(_blockEnd.length())
+ {
+ _separator = true;
+ _out << _blockEnd;
+ }
+ }
+ else
+ {
+ if(_blockEnd.length())
+ {
+ newline();
+ _out << _blockEnd;
+ }
}
--_pos;
}
@@ -310,6 +329,7 @@ IceUtilInternal::Output::eb()
void
IceUtilInternal::Output::spar(char c)
{
+ _emptyBlock = false;
_out << c;
_par = 0;
}