|
gem5
v21.0.1.0
|
#include <cstring>#include <limits>#include <locale>#include <stdexcept>#include <string>#include <type_traits>#include <vector>#include "base/logging.hh"Go to the source code of this file.
Functions | |
| void | eat_lead_white (std::string &s) |
| void | eat_end_white (std::string &s) |
| void | eat_white (std::string &s) |
| std::string | to_lower (const std::string &s) |
| bool | split_first (const std::string &s, std::string &lhs, std::string &rhs, char c) |
| bool | split_last (const std::string &s, std::string &lhs, std::string &rhs, char c) |
| void | tokenize (std::vector< std::string > &vector, const std::string &s, char token, bool ign=true) |
| template<class T > | |
| std::enable_if_t<(std::is_integral< T >::value||std::is_floating_point< T >::value||std::is_enum< T >::value) &&!std::is_same< bool, T >::value, bool > | to_number (const std::string &value, T &retval) |
| Turn a string representation of a number, either integral, floating point, or enum into an actual number. More... | |
| bool | to_bool (const std::string &value, bool &retval) |
| Turn a string representation of a boolean into a boolean value. More... | |
| std::string | quote (const std::string &s) |
| bool | startswith (const char *s, const char *prefix) |
| Return true if 's' starts with the prefix string 'prefix'. More... | |
| bool | startswith (const std::string &s, const char *prefix) |
| Return true if 's' starts with the prefix string 'prefix'. More... | |
| bool | startswith (const std::string &s, const std::string &prefix) |
| Return true if 's' starts with the prefix string 'prefix'. More... | |
String to number helper functions for signed and unsigned | |
integeral type, as well as enums and floating-point types. | |
| template<class T > | |
| std::enable_if_t< std::is_integral< T >::value &&std::is_signed< T >::value, T > | __to_number (const std::string &value) |
| template<class T > | |
| std::enable_if_t< std::is_integral< T >::value &&!std::is_signed< T >::value, T > | __to_number (const std::string &value) |
| template<class T > | |
| std::enable_if_t< std::is_enum< T >::value, T > | __to_number (const std::string &value) |
| template<class T > | |
| std::enable_if_t< std::is_floating_point< T >::value, T > | __to_number (const std::string &value) |
| std::enable_if_t<std::is_integral<T>::value && std::is_signed<T>::value, T> __to_number | ( | const std::string & | value | ) |
Definition at line 113 of file str.hh.
References MipsISA::r.
| std::enable_if_t<std::is_integral<T>::value && !std::is_signed<T>::value, T> __to_number | ( | const std::string & | value | ) |
Definition at line 131 of file str.hh.
References MipsISA::r.
| std::enable_if_t<std::is_enum<T>::value, T> __to_number | ( | const std::string & | value | ) |
Definition at line 146 of file str.hh.
References MipsISA::r, and X86ISA::type.
| std::enable_if_t<std::is_floating_point<T>::value, T> __to_number | ( | const std::string & | value | ) |
Definition at line 158 of file str.hh.
References MipsISA::r.
|
inline |
Definition at line 56 of file str.hh.
References ArmISA::s.
Referenced by eat_white(), IniFile::load(), and TEST().
|
inline |
|
inline |
Definition at line 64 of file str.hh.
References eat_end_white(), eat_lead_white(), and ArmISA::s.
Referenced by IniFile::Section::add(), IniFile::add(), IniFile::load(), PseudoInst::loadsymbol(), and TEST().
|
inline |
| bool split_first | ( | const std::string & | s, |
| std::string & | lhs, | ||
| std::string & | rhs, | ||
| char | c | ||
| ) |
| bool split_last | ( | const std::string & | s, |
| std::string & | lhs, | ||
| std::string & | rhs, | ||
| char | c | ||
| ) |
|
inline |
Return true if 's' starts with the prefix string 'prefix'.
Definition at line 239 of file str.hh.
References ArmISA::s.
Referenced by Process::absolutePath(), chdirFunc(), Process::checkPathRedirect(), normalizePath(), openatFunc(), procInfo(), System::stripSystemName(), and TEST().
|
inline |
|
inline |
|
inline |
Turn a string representation of a boolean into a boolean value.
Definition at line 201 of file str.hh.
References ArmISA::s, and to_lower().
Referenced by ParseParam< bool >::parse(), sc_dt::sc_uint_bitref_r::print(), sc_dt::sc_int_bitref_r::print(), sc_dt::sc_unsigned_bitref_r::print(), sc_dt::sc_signed_bitref_r::print(), sc_dt::scfx_rep::set_slice(), and TEST().
|
inline |
|
inline |
Turn a string representation of a number, either integral, floating point, or enum into an actual number.
Use to_bool for booleans.
| value | The string representing the number |
| retval | The resulting value |
Definition at line 183 of file str.hh.
References panic.
| void tokenize | ( | std::vector< std::string > & | vector, |
| const std::string & | s, | ||
| char | token, | ||
| bool | ign = true |
||
| ) |
Definition at line 65 of file str.cc.
References ignore(), ArmISA::s, SCMI::token, and ArmISA::v.
Referenced by arrayParamIn(), ObjectMatch::domatch(), CxxIniFile::getParamVector(), Stats::Info::less(), IniFile::Section::printUnreferenced(), ObjectMatch::setExpression(), TEST(), and Stats::validateStatName().