tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

StringOperations.h (812B)


      1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
      2 /* This Source Code Form is subject to the terms of the Mozilla Public
      3 * License, v. 2.0. If a copy of the MPL was not distributed with this
      4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
      5 
      6 #ifndef StringOperations_h
      7 #define StringOperations_h
      8 
      9 #include <memory>
     10 #include <string.h>
     11 #include <string>
     12 
     13 std::string hash(const std::string &Str);
     14 
     15 template <typename... Args>
     16 inline std::string stringFormat(const std::string &Format, Args... ArgList) {
     17  size_t Len = snprintf(nullptr, 0, Format.c_str(), ArgList...);
     18  std::unique_ptr<char[]> Buf(new char[Len + 1]);
     19  snprintf(Buf.get(), Len + 1, Format.c_str(), ArgList...);
     20  return std::string(Buf.get(), Buf.get() + Len);
     21 }
     22 
     23 std::string toString(int N);
     24 
     25 #endif