Sha256: 0d6aa97b573874b1b4c58d8c2db8ef1b336ed9d251a0d1e76105b149e592572f
Contents?: true
Size: 1.21 KB
Versions: 7
Compression:
Stored size: 1.21 KB
Contents
// -*- c++ -*- #pragma once #ifndef __XOT_STRING_H__ #define __XOT_STRING_H__ #include <stdarg.h> #include <string> #include <vector> #define XOT_STRINGF(format, result) \ Xot::String result; \ do \ { \ if (format) \ { \ va_list args; \ va_start(args, format); \ result = Xot::stringf(format, args); \ va_end(args); \ } \ } \ while (false) namespace Xot { class String : public std::string { typedef std::string Super; public: String (); String (const char* str); template <typename ITERATOR> String (ITERATOR begin, ITERATOR end) : Super(begin, end) {} String upcase () const; String downcase () const; String strip () const; operator const char* () const; friend String operator + (const String& lhs, const String& rhs); friend String operator + (const String& lhs, const char* rhs); friend String operator + (const char* lhs, const String& rhs); };// String typedef std::vector<String> StringList; String stringf (const char* format, ...); String stringf (const char* format, va_list args); void split(StringList* result, const char* string, char separator = '\n'); template <typename T> String to_s (const T& val); }// Xot #endif//EOH
Version data entries
7 entries across 7 versions & 1 rubygems