diff options
| author | Shinichiro Hamaji <shinichiro.hamaji@gmail.com> | 2015-06-18 11:01:51 +0900 |
|---|---|---|
| committer | Shinichiro Hamaji <shinichiro.hamaji@gmail.com> | 2015-06-18 11:25:45 +0900 |
| commit | 8f68bd3becce2fa8f442468691c2555d5a2f37e0 (patch) | |
| tree | c36a9cbc2a37b6df40ba4cb0f371d0d73da42d88 /strutil.cc | |
| parent | e22fe8efc0689cca613cbe72d5daa307889cadb1 (diff) | |
[C++] Introduce ScopedTerminator
Diffstat (limited to 'strutil.cc')
| -rw-r--r-- | strutil.cc | 9 |
1 files changed, 9 insertions, 0 deletions
@@ -77,6 +77,15 @@ void WordWriter::Write(StringPiece s) { AppendString(s, out_); } +ScopedTerminator::ScopedTerminator(StringPiece s) + : s_(s), c_(s[s.size()]) { + const_cast<char*>(s_.data())[s_.size()] = '\0'; +} + +ScopedTerminator::~ScopedTerminator() { + const_cast<char*>(s_.data())[s_.size()] = c_; +} + static unordered_map<StringPiece, char*>* g_symtab; void InitSymtab() { |
