global concat op for strings

This commit is contained in:
q66 2016-05-07 17:25:40 +01:00
parent 7561d40b14
commit a5c4b9d3ca

View file

@ -908,6 +908,28 @@ String to_string(std::initializer_list<T> init) {
return to_string(iter(init)); return to_string(iter(init));
} }
/* TODO: rvalue ref versions for rhs when we have efficient prepend */
inline String operator+(ConstCharRange lhs, ConstCharRange rhs) {
String ret(lhs); ret += rhs; return ret;
}
inline String operator+(String &&lhs, ConstCharRange rhs) {
String ret(move(lhs)); ret += rhs; return ret;
}
inline String operator+(ConstCharRange lhs, char rhs) {
String ret(lhs); ret += rhs; return ret;
}
inline String operator+(String &&lhs, char rhs) {
String ret(move(lhs)); ret += rhs; return ret;
}
inline String operator+(char lhs, ConstCharRange rhs) {
String ret(lhs); ret += rhs; return ret;
}
template<typename R> template<typename R>
struct TempCString { struct TempCString {
private: private: