User Guide
string_utils.hpp File Reference

Implement string manipulation functions. More...

Detailed Description

Implement string manipulation functions.

String trimming and manipulation functions based on stackoverflow.com/questions/216823/whats-the-best-way-to-trim-stdstring

Definition in file string_utils.hpp.

#include <algorithm>
#include <cctype>
#include <cmath>
#include <functional>
#include <sstream>
#include <vector>

Go to the source code of this file.

Namespaces

 nmodl
 encapsulates code generation backend implementations
 
 nmodl::stringutils
 string utility functions
 

Enumerations

enum  nmodl::stringutils::text_alignment { nmodl::stringutils::text_alignment::left, nmodl::stringutils::text_alignment::right, nmodl::stringutils::text_alignment::center }
 text alignment when printing in the tabular form More...
 

Functions

static std::string nmodl::stringutils::ltrim (std::string text)
 
static std::string nmodl::stringutils::rtrim (std::string text)
 
static std::string nmodl::stringutils::trim (std::string text)
 
static std::string nmodl::stringutils::remove_character (std::string text, const char c)
 Remove all occurrences of a given character in a text. More...
 
static std::string nmodl::stringutils::trim_newline (std::string text)
 
static std::string nmodl::stringutils::escape_quotes (const std::string &text)
 Escape double-quote in a text, useful for JSON pretty printer. More...
 
static std::vector< std::string > nmodl::stringutils::split_string (const std::string &text, char delimiter)
 Split a text in a list of words, using a given delimiter character. More...
 
static bool nmodl::stringutils::ends_with (const std::string &haystack, const std::string &needle)
 Check if haystack ends with needle. More...
 
static bool nmodl::stringutils::starts_with (const std::string &haystack, const std::string &needle)
 Check if haystack starts with needle. More...
 
static std::string nmodl::stringutils::align_text (const std::string &text, int width, text_alignment type)
 Aligns a text within a field of width width. More...
 
static std::string nmodl::stringutils::tolower (std::string text)
 To lower case. More...
 
std::string nmodl::stringutils::to_string (double value, const std::string &format_spec="{:.16g}")
 Convert double value to string without trailing zeros. More...
 
std::string nmodl::stringutils::join_arguments (const std::string &lhs, const std::string &rhs)
 Joint two (list of) arguments. More...