41 lines
572 B
C++
41 lines
572 B
C++
// License: Modified MIT (NON-AI)
|
|
// See the LICENSE file in the root directory for license information.
|
|
// Copyright 2025 Timothy Prepscius
|
|
|
|
#pragma once
|
|
|
|
#include "String.hpp"
|
|
#include "StringView.hpp"
|
|
|
|
#include <sstream>
|
|
|
|
namespace tjp::core {
|
|
|
|
struct ToString
|
|
{
|
|
struct End_ {};
|
|
static constexpr End_ End{};
|
|
|
|
std::stringstream o;
|
|
|
|
template<typename T>
|
|
ToString &operator <<(T &&t)
|
|
{
|
|
o << t;
|
|
return *this;
|
|
}
|
|
|
|
operator String()
|
|
{
|
|
return o.str();
|
|
}
|
|
} ;
|
|
|
|
inline
|
|
String operator <<(std::stringstream &o, ToString::End_)
|
|
{
|
|
return o.str();
|
|
}
|
|
|
|
} // namespace
|