sst-waveshapers
Waveshapers submodule for the Surge Synthesizer
Public Types | Public Member Functions | List of all members
StringRef Class Reference

A non-owning string class (similar to the forthcoming std::string_view) Note that, because a StringRef may be a substring of another string, it may not be null terminated. More...

Public Types

using size_type = std::size_t
 
using const_iterator = const char *
 

Public Member Functions

constexpr StringRef () noexcept=default
 
 StringRef (char const *rawChars) noexcept
 
constexpr StringRef (char const *rawChars, size_type size) noexcept
 
 StringRef (std::string const &stdString) noexcept
 
 operator std::string () const
 
auto operator== (StringRef const &other) const noexcept -> bool
 
auto operator!= (StringRef const &other) const noexcept -> bool
 
auto operator[] (size_type index) const noexcept -> char
 
constexpr auto empty () const noexcept -> bool
 
constexpr auto size () const noexcept -> size_type
 
auto c_str () const -> char const *
 
auto substr (size_type start, size_type length) const noexcept -> StringRef
 
auto data () const noexcept -> char const *
 
constexpr auto isNullTerminated () const noexcept -> bool
 
constexpr const_iterator begin () const
 
constexpr const_iterator end () const
 

Detailed Description

A non-owning string class (similar to the forthcoming std::string_view) Note that, because a StringRef may be a substring of another string, it may not be null terminated.

Member Typedef Documentation

◆ size_type

using size_type = std::size_t

◆ const_iterator

using const_iterator = const char*

Constructor & Destructor Documentation

◆ StringRef() [1/4]

constexpr StringRef ( )
constexprdefaultnoexcept

◆ StringRef() [2/4]

StringRef ( char const *  rawChars)
noexcept

◆ StringRef() [3/4]

constexpr StringRef ( char const *  rawChars,
size_type  size 
)
constexprnoexcept

◆ StringRef() [4/4]

StringRef ( std::string const &  stdString)
noexcept

Member Function Documentation

◆ operator std::string()

operator std::string ( ) const
explicit

◆ operator==()

auto operator== ( StringRef const &  other) const -> bool
noexcept

◆ operator!=()

auto operator!= ( StringRef const &  other) const -> bool
noexcept

◆ operator[]()

auto operator[] ( size_type  index) const -> char
noexcept

◆ empty()

constexpr auto empty ( ) const -> bool
constexprnoexcept

◆ size()

constexpr auto size ( ) const -> size_type
constexprnoexcept

◆ c_str()

auto c_str ( ) const -> char const *

◆ substr()

auto substr ( size_type  start,
size_type  length 
) const -> StringRef
noexcept

◆ data()

auto data ( ) const -> char const *
noexcept

◆ isNullTerminated()

constexpr auto isNullTerminated ( ) const -> bool
constexprnoexcept

◆ begin()

constexpr const_iterator begin ( ) const
constexpr

◆ end()

constexpr const_iterator end ( ) const
constexpr

The documentation for this class was generated from the following file: