diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2018-03-24 13:00:05 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2018-03-24 13:00:05 +0200 |
commit | 74fff9901d9529cdde4ed42254aa21afe466ac3a (patch) | |
tree | b95c93bc49e0ff9d9a1d7b26931f473f5e68aff9 /cli/source.cxx | |
parent | a2884d0ae08c4c13998570aa0073b05dec82c543 (diff) |
Add --keep-separator option
Diffstat (limited to 'cli/source.cxx')
-rw-r--r-- | cli/source.cxx | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/cli/source.cxx b/cli/source.cxx index 180cea8..9c88014 100644 --- a/cli/source.cxx +++ b/cli/source.cxx @@ -938,13 +938,18 @@ namespace << "const char* o = s.peek ();"; if (sep) + { os << endl << "if (std::strcmp (o, \"" << opt_sep << "\") == 0)" << "{" - << "s.skip ();" // We don't want to remove the separator. - << "opt = false;" - << "continue;" - << "}"; + << "opt = false;"; + if (!options.keep_separator ()) + { + os << "s.skip ();" // We don't want to erase the separator. + << "continue;"; + } + os << "}"; + } os << "if (" << (sep ? "opt && " : "") << "_parse (o, s));"; |