1 #ifndef LOCARNA_STRING1_HH
2 #define LOCARNA_STRING1_HH
30 explicit string1(
const std::string &s) : s_(s) {}
69 assert(i <= s_.length());
83 assert(i <= s_.length());
117 std::reverse(s_.begin(), s_.end());
141 assert(pos <= s_.length());
142 return string1(s_.substr(pos - 1, len));
A simple 1-based string.
Definition: string1.hh:21
const std::string & str() const
Definition: string1.hh:45
string1 & operator=(const string1 &s)
Assignment operator.
Definition: string1.hh:106
void push_back(char c)
push back character
Definition: string1.hh:126
string1 substr(size_t pos, size_t len) const
Substring.
Definition: string1.hh:139
string1(const string1 &s)
Copy constructor.
Definition: string1.hh:37
std::string & str()
Definition: string1.hh:55
void reverse()
reverse string
Definition: string1.hh:116
size_t length() const
Provide length.
Definition: string1.hh:93
const char & operator[](size_t i) const
Read access.
Definition: string1.hh:67
string1(const std::string &s)
Construct from std::string.
Definition: string1.hh:30
char & operator[](size_t i)
Read/write access.
Definition: string1.hh:81
Definition: aligner.cc:15