openMSX
Classes | Functions
zstring_view.hh File Reference
#include <cassert>
#include <cstring>
#include <iostream>
#include <string>
#include <string_view>
#include <type_traits>
Include dependency graph for zstring_view.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  zstring_view
 Like std::string_view, but with the extra guarantee that it refers to a zero-terminated string. More...
 

Functions

constexpr auto begin (const zstring_view &x)
 
constexpr auto end (const zstring_view &x)
 
constexpr bool operator== (const zstring_view &x, const zstring_view &y)
 
bool operator== (const zstring_view &x, const std::string &y)
 
constexpr bool operator== (const zstring_view &x, const std::string_view &y)
 
constexpr bool operator== (const zstring_view &x, const char *y)
 
constexpr auto operator< (const zstring_view &x, const zstring_view &y)
 
auto operator< (const zstring_view &x, const std::string &y)
 
constexpr auto operator< (const zstring_view &x, const std::string_view &y)
 
constexpr auto operator< (const zstring_view &x, const char *y)
 
constexpr auto operator<= (const zstring_view &x, const zstring_view &y)
 
auto operator<= (const zstring_view &x, const std::string &y)
 
constexpr auto operator<= (const zstring_view &x, const std::string_view &y)
 
constexpr auto operator<= (const zstring_view &x, const char *y)
 
constexpr auto operator> (const zstring_view &x, const zstring_view &y)
 
auto operator> (const zstring_view &x, const std::string &y)
 
constexpr auto operator> (const zstring_view &x, const std::string_view &y)
 
constexpr auto operator> (const zstring_view &x, const char *y)
 
constexpr auto operator>= (const zstring_view &x, const zstring_view &y)
 
auto operator>= (const zstring_view &x, const std::string &y)
 
constexpr auto operator>= (const zstring_view &x, const std::string_view &y)
 
constexpr auto operator>= (const zstring_view &x, const char *y)
 
std::ostream & operator<< (std::ostream &os, const zstring_view &str)
 

Function Documentation

◆ begin()

constexpr auto begin ( const zstring_view x)
constexpr

Definition at line 108 of file zstring_view.hh.

References zstring_view::begin().

Referenced by openmsx::MSXMultiMemDevice::add(), openmsx::TclObject::addListElements(), openmsx::OSDWidget::addWidget(), ranges::all_of(), ranges::any_of(), detail::append(), append(), view::detail::Drop< Range >::begin(), view::detail::DropBack< Range >::begin(), view::detail::Transform< Range, UnaryOp >::begin(), view::detail::Filter< Range, Predicate >::begin(), view::detail::Take< Range >::begin(), view::detail::Zip< CHECK_ALL, RangesTuple, Is >::begin(), ranges::binary_search(), openmsx::Completer::completeString(), concat(), contains(), ranges::copy(), ranges::copy_if(), openmsx::IPSPatch::copyBlock(), ranges::count(), ranges::count_if(), openmsx::DebuggableEditor::DebuggableEditor(), view::detail::DropBack< Range >::end(), enumerate(), ranges::equal_range(), ranges::fill(), openmsx::Completer::filter(), ranges::find(), ranges::find_if(), find_if_unguarded(), ranges::generate(), openmsx::OggReader::getAudio(), openmsx::ReverseManager::getBegin(), openmsx::WatchIO::getDevice(), openmsx::ClockPin::getTicksBetween(), ranges::iota(), make_span(), ranges::none_of(), openmsx::XMLElement::numAttributes(), openmsx::XMLElement::numChildren(), openmsx::CollectionSaver< TC >::operator()(), partition_copy_remove(), ObjectPool< T >::ptr2Index(), ranges::remove(), ranges::remove_if(), ranges::replace(), ranges::replace_if(), openmsx::OggReader::seek(), ranges::set_difference(), IterableBitSet< N >::setRange(), utf8::unchecked::size(), ranges::sort(), StringOp::split_view(), ranges::stable_sort(), openmsx::ReverseManager::stopReplay(), utf8::unchecked::substr(), detail::sum_of_sizes(), TEST_CASE(), ImGui::TextUnformatted(), to_vector(), ranges::transform(), transform_in_place(), and ranges::unique().

◆ end()

constexpr auto end ( const zstring_view x)
constexpr

Definition at line 109 of file zstring_view.hh.

References zstring_view::end().

Referenced by openmsx::TclObject::addListElements(), utf8::advance(), ranges::all_of(), ranges::any_of(), detail::append(), append(), view::detail::Drop< Range >::begin(), view::detail::Filter< Range, Predicate >::begin(), ranges::binary_search(), openmsx::Completer::completeString(), contains(), ranges::copy(), ranges::copy_if(), ranges::count(), ranges::count_if(), openmsx::LastDeltaBlocks::createNew(), openmsx::LastDeltaBlocks::createNullDiff(), openmsx::DebuggableEditor::DebuggableEditor(), view::detail::Drop< Range >::end(), view::detail::DropBack< Range >::end(), view::detail::Transform< Range, UnaryOp >::end(), view::detail::Filter< Range, Predicate >::end(), view::detail::Take< Range >::end(), view::detail::Zip< CHECK_ALL, RangesTuple, Is >::end(), enumerate(), ranges::equal_range(), ranges::fill(), openmsx::Completer::filter(), ranges::find(), ranges::find_if(), find_if_unguarded(), utf8::find_invalid(), openmsx::OSDTopWidget::findByName(), openmsx::MSXCommandController::findCommand(), openmsx::PluggingController::findConnector(), openmsx::MSXMotherBoard::findDevice(), openmsx::MSXMixer::findDeviceInfo(), openmsx::MSXMotherBoard::findExtension(), openmsx::PluggingController::findPluggable(), openmsx::Debugger::findProbe(), openmsx::SettingsManager::findSetting(), openmsx::UserSettings::findSetting(), ranges::generate(), openmsx::TTFFontPool::get(), openmsx::OggReader::getAudio(), openmsx::ResampleCoeffs::getCoeffs(), openmsx::DiskManipulator::getDrive(), openmsx::ReverseManager::getEnd(), openmsx::Reactor::getHwConfigs(), openmsx::HDImageCLI::getImageForId(), openmsx::ClockPin::getTicksBetween(), openmsx::MSXDevice::getVisibleMemRegion(), ranges::iota(), utf8::is_valid(), utf8::next(), ranges::none_of(), openmsx::XMLElement::numAttributes(), openmsx::XMLElement::numChildren(), openmsx::CollectionSaver< TC >::operator()(), openmsx::ParsedSlotCond::ParsedSlotCond(), partition_copy_remove(), utf8::peek_next(), openmsx::ImagePrinter::printVisibleCharacter(), utf8::prior(), ObjectPool< T >::ptr2Index(), openmsx::DiskManipulator::registerDrive(), openmsx::GlobalCommandController::registerProxyCommand(), openmsx::GlobalCommandController::registerProxySetting(), openmsx::WavImageCache::release(), ranges::remove(), ranges::remove_if(), openmsx::OSDTopWidget::removeName(), openmsx::MSXCPUInterface::removeWatchPoint(), openmsx::Display::repaintImpl(), ranges::replace(), ranges::replace_if(), utf8::replace_invalid(), openmsx::InputArchiveBase2::resetSharedPtr(), openmsx::OggReader::seek(), ranges::set_difference(), IterableBitSet< N >::setRange(), utf8::unchecked::size(), ranges::sort(), StringOp::split_view(), ranges::stable_sort(), openmsx::ReverseManager::stopReplay(), utf8::unchecked::substr(), detail::sum_of_sizes(), openmsx::EventDelay::sync(), TEST_CASE(), ImGui::TextUnformatted(), to_vector(), ranges::transform(), transform_in_place(), ranges::unique(), openmsx::DiskManipulator::unregisterDrive(), openmsx::GlobalCommandController::unregisterProxyCommand(), openmsx::GlobalCommandController::unregisterProxySetting(), openmsx::RawTrack::updateCrc(), utf8::utf16to8(), utf8::unchecked::utf16to8(), utf8::utf32to8(), utf8::unchecked::utf32to8(), utf8::utf8to16(), utf8::unchecked::utf8to16(), utf8::utf8to32(), utf8::unchecked::utf8to32(), utf8::internal::validate_next(), openmsx::RawTrack::write(), and openmsx::CompressedFileAdapter::~CompressedFileAdapter().

◆ operator<() [1/4]

constexpr auto operator< ( const zstring_view x,
const char *  y 
)
constexpr

Definition at line 135 of file zstring_view.hh.

◆ operator<() [2/4]

auto operator< ( const zstring_view x,
const std::string &  y 
)
inline

Definition at line 129 of file zstring_view.hh.

◆ operator<() [3/4]

constexpr auto operator< ( const zstring_view x,
const std::string_view &  y 
)
constexpr

Definition at line 132 of file zstring_view.hh.

◆ operator<() [4/4]

constexpr auto operator< ( const zstring_view x,
const zstring_view y 
)
constexpr

Definition at line 126 of file zstring_view.hh.

◆ operator<<()

std::ostream & operator<< ( std::ostream &  os,
const zstring_view str 
)
inline

Definition at line 175 of file zstring_view.hh.

◆ operator<=() [1/4]

constexpr auto operator<= ( const zstring_view x,
const char *  y 
)
constexpr

Definition at line 147 of file zstring_view.hh.

◆ operator<=() [2/4]

auto operator<= ( const zstring_view x,
const std::string &  y 
)
inline

Definition at line 141 of file zstring_view.hh.

◆ operator<=() [3/4]

constexpr auto operator<= ( const zstring_view x,
const std::string_view &  y 
)
constexpr

Definition at line 144 of file zstring_view.hh.

◆ operator<=() [4/4]

constexpr auto operator<= ( const zstring_view x,
const zstring_view y 
)
constexpr

Definition at line 138 of file zstring_view.hh.

◆ operator==() [1/4]

constexpr bool operator== ( const zstring_view x,
const char *  y 
)
constexpr

Definition at line 120 of file zstring_view.hh.

◆ operator==() [2/4]

bool operator== ( const zstring_view x,
const std::string &  y 
)
inline

Definition at line 114 of file zstring_view.hh.

◆ operator==() [3/4]

constexpr bool operator== ( const zstring_view x,
const std::string_view &  y 
)
constexpr

Definition at line 117 of file zstring_view.hh.

◆ operator==() [4/4]

constexpr bool operator== ( const zstring_view x,
const zstring_view y 
)
constexpr

Definition at line 111 of file zstring_view.hh.

◆ operator>() [1/4]

constexpr auto operator> ( const zstring_view x,
const char *  y 
)
constexpr

Definition at line 159 of file zstring_view.hh.

◆ operator>() [2/4]

auto operator> ( const zstring_view x,
const std::string &  y 
)
inline

Definition at line 153 of file zstring_view.hh.

◆ operator>() [3/4]

constexpr auto operator> ( const zstring_view x,
const std::string_view &  y 
)
constexpr

Definition at line 156 of file zstring_view.hh.

◆ operator>() [4/4]

constexpr auto operator> ( const zstring_view x,
const zstring_view y 
)
constexpr

Definition at line 150 of file zstring_view.hh.

◆ operator>=() [1/4]

constexpr auto operator>= ( const zstring_view x,
const char *  y 
)
constexpr

Definition at line 171 of file zstring_view.hh.

◆ operator>=() [2/4]

auto operator>= ( const zstring_view x,
const std::string &  y 
)
inline

Definition at line 165 of file zstring_view.hh.

◆ operator>=() [3/4]

constexpr auto operator>= ( const zstring_view x,
const std::string_view &  y 
)
constexpr

Definition at line 168 of file zstring_view.hh.

◆ operator>=() [4/4]

constexpr auto operator>= ( const zstring_view x,
const zstring_view y 
)
constexpr

Definition at line 162 of file zstring_view.hh.