diff options
author | Taku Kudo <taku@google.com> | 2018-05-06 18:51:20 +0300 |
---|---|---|
committer | Taku Kudo <taku@google.com> | 2018-05-06 18:51:20 +0300 |
commit | cf0eb82d65850172a4661e47668938ab82cb2c76 (patch) | |
tree | fa6414db5714c6fd15f725d5a9e28cbcb14e20c2 /src/util.cc | |
parent | 31153b117294830ab41ff3e9ee4f0a7323f16d8d (diff) |
CHECK to Status migration for Trainer.
Diffstat (limited to 'src/util.cc')
-rw-r--r-- | src/util.cc | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/src/util.cc b/src/util.cc index d06d953..915f01f 100644 --- a/src/util.cc +++ b/src/util.cc @@ -220,7 +220,9 @@ namespace io { InputBuffer::InputBuffer(StringPiece filename) : is_(filename.empty() ? &std::cin : new std::ifstream(WPATH(filename.data()))) { - CHECK_IFS(*is_, filename.data()); + if (!*is_) + status_ = util::StatusBuilder(util::error::NOT_FOUND) + << "\"" << filename.data() << "\": " << std::strerror(errno); } InputBuffer::~InputBuffer() { @@ -229,6 +231,8 @@ InputBuffer::~InputBuffer() { } } +util::Status InputBuffer::status() const { return status_; } + bool InputBuffer::ReadLine(std::string *line) { return static_cast<bool>(std::getline(*is_, *line)); } @@ -237,7 +241,9 @@ OutputBuffer::OutputBuffer(StringPiece filename) : os_(filename.empty() ? &std::cout : new std::ofstream(WPATH(filename.data()), OUTPUT_MODE)) { - CHECK_OFS(*os_, filename.data()); + if (!*os_) + status_ = util::StatusBuilder(util::error::PERMISSION_DENIED) + << "\"" << filename.data() << "\": " << std::strerror(errno); } OutputBuffer::~OutputBuffer() { @@ -246,13 +252,15 @@ OutputBuffer::~OutputBuffer() { } } -void OutputBuffer::Write(StringPiece text) { +util::Status OutputBuffer::status() const { return status_; } + +bool OutputBuffer::Write(StringPiece text) { os_->write(text.data(), text.size()); + return os_->good(); } -void OutputBuffer::WriteLine(StringPiece text) { - Write(text); - Write("\n"); +bool OutputBuffer::WriteLine(StringPiece text) { + return Write(text) && Write("\n"); } } // namespace io } // namespace sentencepiece |