38#ifndef DRAIN_STRING_BUILDER
39#define DRAIN_STRING_BUILDER
52#include "StreamBuilder.h"
67 template<
typename ... TT>
74 template<
typename ... TT>
75 StringBuilder & create(
const TT &... args){
81 template<
typename ... TT>
83 streamBuilder.create(args...);
85 std::stringbuf *buf = streamBuilder.rdbuf();
86 if (buf->in_avail() > 0){
88 while ((c = buf->sbumpc()) != EOF){
90 this->push_back(
static_cast<char>(c));
98 const std::string &
str()
const {
110std::ostream & operator<<(std::ostream &ostr,
const StringBuilder<SEP> & strb){
111 return ostr << strb.str();
Definition StreamBuilder.h:59
Definition StringBuilder.h:58
StringBuilder(const std::string &arg="")
Faster short-cut for single-arg initialization.
Definition StringBuilder.h:63
const std::string & str() const
For explicit string cast, esp. for (skipping) template deduction.
Definition StringBuilder.h:98
Definition DataSelector.cpp:1277