refactor: remove vec() method, use a constructor

This commit is contained in:
ToruNiina
2020-07-21 20:55:18 +09:00
parent 75999aa9ad
commit a8fa14d159
2 changed files with 11 additions and 17 deletions

View File

@@ -48,8 +48,6 @@ struct region_base
virtual std::string line() const {return std::string("unknown line");}
virtual std::string line_num() const {return std::string("?");}
virtual std::vector<char> vec() const {return std::vector<char>{};}
// length of the region
virtual std::size_t size() const noexcept {return 0;}
// number of characters in the line before the region
@@ -149,8 +147,6 @@ struct location final : public region_base
std::string str() const override {return make_string(1, *this->iter());}
std::string name() const override {return source_name_;}
std::vector<char> vec() const override {return std::vector<char>{*this->iter()};}
std::string line_num() const override
{
return std::to_string(this->line_number_);
@@ -269,8 +265,6 @@ struct region final : public region_base
return std::to_string(1 + std::count(this->begin(), this->first(), '\n'));
}
std::vector<char> vec() const override {return std::vector<char>(first_, last_);}
std::size_t size() const noexcept override
{
const auto sz = std::distance(first_, last_);