ALib C++ Library
Library Version: 2511 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
alib::strings::compatibility::std Namespace Reference

Description:

This namespace documents compatibility features of ALib Strings and the standard C++ class library found in namespace std.

Type Index:

struct  equal_to< alib::strings::TString< TChar > >
 
struct  equal_to_string_ignore_case
 
struct  formatter< alib::strings::Appendable< TAppendable >, TChar >
 
struct  formatter< alib::strings::TAString< TChar, TAllocator >, TChar >
 
struct  formatter< alib::strings::TCString< TChar >, TChar >
 
struct  formatter< alib::strings::TLocalString< TChar, TCapacity, TAllocator >, TChar >
 
struct  formatter< alib::strings::TString< TChar >, TChar >
 
struct  formatter< alib::strings::TSubstring< TChar >, TChar >
 
struct  hash< alib::strings::TString< TChar > >
 
struct  hash_string_ignore_case
 
class  IStreamReader
 
struct  less< alib::strings::TString< TChar > >
 
struct  less_string_ignore_case
 
class  OStreamWriter
 
struct  SuppressStdOStreamOpTraits
 
struct  TIStreamLine
 

Function Index:

ALIB_EXPORT std::ostream & operator<< (std::ostream &stream, const alib::NString &string)
 
ALIB_EXPORT ALIB_DLL std::ostream & operator<< (std::ostream &stream, const alib::WString &string)
 
template<typename TAppendable>
requires ( alib::strings::IsAppendable<TAppendable,alib::nchar,alib::lang::HeapAllocator> && !alib::strings::compatibility::std::SuppressStdOStreamOpTraits<TAppendable>::value )
ALIB_EXPORT std::ostream & operator<< (std::ostream &stream, const TAppendable &appendable)
 
ALIB_EXPORT std::ostream * operator<< (std::ostream *stream, const alib::NString &string)
 
ALIB_EXPORT std::ostream * operator<< (std::ostream *stream, const alib::WString &string)
 
template<typename TAppendable>
requires ( alib::strings::IsAppendable<TAppendable,alib::nchar,alib::lang::HeapAllocator> && !alib::strings::compatibility::std::SuppressStdOStreamOpTraits<TAppendable>::value )
ALIB_EXPORT std::ostream * operator<< (std::ostream *stream, const TAppendable &appendable)
 
ALIB_EXPORT ALIB_DLL std::wostream & operator<< (std::wostream &stream, const alib::NString &string)
 
ALIB_EXPORT std::wostream & operator<< (std::wostream &stream, const alib::WString &string)
 
template<typename TAppendable>
requires ( alib::strings::IsAppendable<TAppendable,alib::wchar,alib::lang::HeapAllocator> && !alib::strings::compatibility::std::SuppressStdOStreamOpTraits<TAppendable>::value )
ALIB_EXPORT std::wostream & operator<< (std::wostream &stream, const TAppendable &appendable)
 
ALIB_EXPORT std::wostream * operator<< (std::wostream *stream, const alib::NString &string)
 
ALIB_EXPORT std::wostream * operator<< (std::wostream *stream, const alib::WString &string)
 
template<typename TAppendable, typename TAllocator>
requires ( alib::strings::IsAppendable<TAppendable,alib::wchar,alib::lang::HeapAllocator> && !alib::strings::compatibility::std::SuppressStdOStreamOpTraits<TAppendable>::value )
ALIB_EXPORT std::wostream * operator<< (std::wostream *stream, const TAppendable &appendable)
 
ALIB_EXPORT std::basic_istream< wchar_t > & operator>> (std::basic_istream< wchar_t > &stream, alib::WAString &string)
 
ALIB_EXPORT std::basic_istream< wchar_t > * operator>> (std::basic_istream< wchar_t > *stream, alib::WAString &string)
 
ALIB_EXPORT std::istream & operator>> (std::istream &stream, alib::NAString &string)
 
ALIB_EXPORT std::istream * operator>> (std::istream *stream, alib::NAString &string)
 
template<typename TChar = nchar, typename TAllocator = lang::HeapAllocator, bool TSynced = false, lang::LineFeeds TTargetLF = lang::LineFeeds::Platform>
 OStreamWriter (::std::basic_ostream< TChar > &os) -> OStreamWriter< nchar, lang::HeapAllocator, TSynced, TTargetLF >
 
template<typename TChar = nchar, typename TAllocator = lang::HeapAllocator, bool TSynced = false, lang::LineFeeds TTargetLF = lang::LineFeeds::Platform>
 OStreamWriter (::std::basic_ostream< TChar > &os, TAllocator allocator) -> OStreamWriter< nchar, TAllocator, TSynced, TTargetLF >
 

Function Details:

◆ operator<<() [1/12]

ALIB_EXPORT std::ostream & alib::strings::compatibility::std::operator<< ( std::ostream & stream,
const alib::NString & string )
inline

Copies the contents of the given NString to into the std::ostream given as reference.

Note
Unlike this documentation indicates, the operator is defined in the global namespace.
Parameters
streamThe ostream object to write the given String into.
stringThe String to write into the given ostream.
Returns
The ostream to allow concatenated operations.

Definition at line 526 of file stdiostream.mpp.

Here is the call graph for this function:

◆ operator<<() [2/12]

ALIB_EXPORT ALIB_DLL std::ostream & alib::strings::compatibility::std::operator<< ( std::ostream & stream,
const alib::WString & string )

Copies the contents of the given WString to into the std::ostream given as reference.

Note
Unlike this documentation indicates, the operator is defined in the global namespace.
Parameters
streamThe ostream object to write the given String into.
stringThe String to write into the given ostream.
Returns
The ostream to allow concatenated operations.
Here is the call graph for this function:

◆ operator<<() [3/12]

template<typename TAppendable>
requires ( alib::strings::IsAppendable<TAppendable,alib::nchar,alib::lang::HeapAllocator> && !alib::strings::compatibility::std::SuppressStdOStreamOpTraits<TAppendable>::value )
ALIB_EXPORT std::ostream & alib::strings::compatibility::std::operator<< ( std::ostream & stream,
const TAppendable & appendable )

Copies the contents of the given appendable type the std::ostream given as reference.

Note
Unlike this documentation indicates, this operator is defined in the global namespace.
Template Parameters
TAppendableThe appendable type.
Parameters
streamThe std::ostream object to write the given String into.
appendableThe object whose contents is to be written into the given stream.
Returns
The ostream to allow concatenated operations.

Definition at line 755 of file stdiostream.mpp.

Here is the call graph for this function:

◆ operator<<() [4/12]

ALIB_EXPORT std::ostream * alib::strings::compatibility::std::operator<< ( std::ostream * stream,
const alib::NString & string )
inline

Copies the contents of the given NString to into the std::ostream given as pointer.

Note
Unlike this documentation indicates, the operator is defined in the global namespace.
Parameters
streamThe ostream object to write the given String into.
stringThe String to write into the given ostream.
Returns
The ostream to allow concatenated operations.

Definition at line 541 of file stdiostream.mpp.

Here is the call graph for this function:

◆ operator<<() [5/12]

ALIB_EXPORT std::ostream * alib::strings::compatibility::std::operator<< ( std::ostream * stream,
const alib::WString & string )
inline

Copies the contents of the given WString to into the std::ostream given as pointer.

Note
Unlike this documentation indicates, the operator is defined in the global namespace.
Parameters
streamThe ostream object to write the given String into.
stringThe String to write into the given ostream.
Returns
The ostream to allow concatenated operations.

Definition at line 567 of file stdiostream.mpp.

Here is the call graph for this function:

◆ operator<<() [6/12]

template<typename TAppendable>
requires ( alib::strings::IsAppendable<TAppendable,alib::nchar,alib::lang::HeapAllocator> && !alib::strings::compatibility::std::SuppressStdOStreamOpTraits<TAppendable>::value )
ALIB_EXPORT std::ostream * alib::strings::compatibility::std::operator<< ( std::ostream * stream,
const TAppendable & appendable )

Copies the contents of the given appendable type the std::ostream given as pointer.

Note
Unlike this documentation indicates, this operator is defined in the global namespace.
Template Parameters
TAppendableThe appendable type.
Parameters
streamThe std::ostream object to write the given String into.
appendableThe object whose contents is to be written into the given stream.
Returns
The ostream to allow concatenated operations.

Definition at line 779 of file stdiostream.mpp.

Here is the call graph for this function:

◆ operator<<() [7/12]

ALIB_EXPORT ALIB_DLL std::wostream & alib::strings::compatibility::std::operator<< ( std::wostream & stream,
const alib::NString & string )

Copies the contents of the given NString to into the std::wostream given as reference.

Note
This operator uses a local string buffer of 256 bytes size to convert the given narrow string to an string of wchar_t characters that the output stream accepts. In case that the given string is larger, a dynamic memory allocation has to be made.
In performance-critical code that writes larger string data, a custom conversion method, that, for example, reuses a buffer, may be appropriate.
Note
Unlike this documentation indicates, the operator is defined in the global namespace.
Parameters
streamThe ostream object to write the given String into.
stringThe String to write into the given ostream.
Returns
The ostream to allow concatenated operations.
Here is the call graph for this function:

◆ operator<<() [8/12]

ALIB_EXPORT std::wostream & alib::strings::compatibility::std::operator<< ( std::wostream & stream,
const alib::WString & string )
inline

Copies the contents of the given WString to into the std::wostream given as reference.

Note
Unlike this documentation indicates, the operator is defined in the global namespace.
Parameters
streamThe ostream object to write the given String into.
stringThe String to write into the given ostream.
Returns
The ostream to allow concatenated operations.

Definition at line 619 of file stdiostream.mpp.

Here is the call graph for this function:

◆ operator<<() [9/12]

template<typename TAppendable>
requires ( alib::strings::IsAppendable<TAppendable,alib::wchar,alib::lang::HeapAllocator> && !alib::strings::compatibility::std::SuppressStdOStreamOpTraits<TAppendable>::value )
ALIB_EXPORT std::wostream & alib::strings::compatibility::std::operator<< ( std::wostream & stream,
const TAppendable & appendable )

Copies the contents of the given appendable type the std::ostream given as reference.

Note
Unlike this documentation indicates, this operator is defined in the global namespace.
Template Parameters
TAppendableThe appendable type.
Parameters
streamThe std::ostream object to write the given String into.
appendableThe object whose contents is to be written into the given stream.
Returns
The ostream to allow concatenated operations.

Definition at line 800 of file stdiostream.mpp.

Here is the call graph for this function:

◆ operator<<() [10/12]

ALIB_EXPORT std::wostream * alib::strings::compatibility::std::operator<< ( std::wostream * stream,
const alib::NString & string )
inline

Copies the contents of the given NString to into the std::wostream given as pointer.

Note
Unlike this documentation indicates, the operator is defined in the global namespace.
See also
The notes on memory efficiency, documented with operator operator<<(std::wostream&,const NString&) which this operator uses inline.
Parameters
streamThe ostream object to write the given String into.
stringThe String to write into the given ostream.
Returns
The ostream to allow concatenated operations.

Definition at line 604 of file stdiostream.mpp.

Here is the call graph for this function:

◆ operator<<() [11/12]

ALIB_EXPORT std::wostream * alib::strings::compatibility::std::operator<< ( std::wostream * stream,
const alib::WString & string )
inline

Copies the contents of the given WString to into the std::wostream given as pointer.

Note
Unlike this documentation indicates, the operator is defined in the global namespace.
Parameters
streamThe ostream object to write the given String into.
stringThe String to write into the given ostream.
Returns
The ostream to allow concatenated operations.

Definition at line 641 of file stdiostream.mpp.

Here is the call graph for this function:

◆ operator<<() [12/12]

template<typename TAppendable, typename TAllocator>
requires ( alib::strings::IsAppendable<TAppendable,alib::wchar,alib::lang::HeapAllocator> && !alib::strings::compatibility::std::SuppressStdOStreamOpTraits<TAppendable>::value )
ALIB_EXPORT std::wostream * alib::strings::compatibility::std::operator<< ( std::wostream * stream,
const TAppendable & appendable )

Copies the contents of the given appendable type the std::ostream given as a pointer.

Note
Unlike this documentation indicates, this operator is defined in the global namespace.
Template Parameters
TAppendableThe appendable type.
TAllocatorThe allocator type, as prototyped with Allocator.
Parameters
streamThe std::ostream object to write the given String into.
appendableThe object whose contents is to be written into the given stream.
Returns
The ostream to allow concatenated operations.

Definition at line 829 of file stdiostream.mpp.

Here is the call graph for this function:

◆ operator>>() [1/4]

ALIB_EXPORT std::basic_istream< wchar_t > & alib::strings::compatibility::std::operator>> ( std::basic_istream< wchar_t > & stream,
alib::WAString & string )
inline

Clears the given WAString and extracts data from the std::istream into it. The extractions ends with either the end of the std::istream or when reading a newline character.

Note
If code selection symbol ALIB_CHARACTERS_NATIVE_WCHAR evaluates to false, a local buffer is used to convert the string of wchar_t characters that the input stream provides. In case that the string read from the stream is larger, a dynamic memory allocation has to be made.
In performance-critical code that receives larger string data, a custom conversion method that, for example, reuses a buffer may be appropriate.
Note
Unlike this documentation indicates, the operator is defined in the global namespace.
Parameters
streamThe istream object to extract data from.
stringThe AString to receive data.
Returns
The ostream to allow concatenated operations.

Definition at line 701 of file stdiostream.mpp.

Here is the call graph for this function:

◆ operator>>() [2/4]

ALIB_EXPORT std::basic_istream< wchar_t > * alib::strings::compatibility::std::operator>> ( std::basic_istream< wchar_t > * stream,
alib::WAString & string )
inline

Clears the given WAString and extracts data from the std::istream into it. The extractions ends with either the end of the std::istream or when reading a newline character.

Note
Unlike this documentation indicates, the operator is defined in the global namespace.
See also
The notes on memory efficiency, documented with operator operator>>(std::basic_istream<wchar_t>&, WAString& ) which this operator uses inline.
Parameters
streamThe istream object to extract data from.
stringThe AString to receive data.
Returns
The ostream to allow concatenated operations.

Definition at line 730 of file stdiostream.mpp.

Here is the call graph for this function:

◆ operator>>() [3/4]

ALIB_EXPORT std::istream & alib::strings::compatibility::std::operator>> ( std::istream & stream,
alib::NAString & string )
inline

Clears the given NAString and extracts data from the std::istream into it. The extraction ends with either the end of the std::istream or when reading a newline character.

Note
Unlike this documentation indicates, the operator is defined in the global namespace.
Parameters
streamThe istream object to extract data from.
stringThe AString to receive data.
Returns
The ostream to allow concatenated operations.

Definition at line 657 of file stdiostream.mpp.

Here is the call graph for this function:

◆ operator>>() [4/4]

ALIB_EXPORT std::istream * alib::strings::compatibility::std::operator>> ( std::istream * stream,
alib::NAString & string )
inline

Clears the given NAString and extracts data from the std::istream into it. The extractions ends with either the end of the std::istream or when reading a newline character.

Note
Unlike this documentation indicates, the operator is defined in the global namespace.
Parameters
streamThe istream object to extract data from.
stringThe AString to receive data.
Returns
The ostream to allow concatenated operations.

Definition at line 673 of file stdiostream.mpp.

Here is the call graph for this function:

◆ OStreamWriter() [1/2]

template<typename TChar = nchar, typename TAllocator = lang::HeapAllocator, bool TSynced = false, lang::LineFeeds TTargetLF = lang::LineFeeds::Platform>
alib::strings::compatibility::std::OStreamWriter ( ::std::basic_ostream< TChar > & os) -> OStreamWriter< nchar, lang::HeapAllocator, TSynced, TTargetLF >
Parameters
osThe output-stream to use.

◆ OStreamWriter() [2/2]

template<typename TChar = nchar, typename TAllocator = lang::HeapAllocator, bool TSynced = false, lang::LineFeeds TTargetLF = lang::LineFeeds::Platform>
alib::strings::compatibility::std::OStreamWriter ( ::std::basic_ostream< TChar > & os,
TAllocator allocator ) -> OStreamWriter< nchar, TAllocator, TSynced, TTargetLF >

C++17 Deduction Guide to construct the type OStreamWriter.

Parameters
osThe output-stream to use.
allocatorThe allocator to use for the internal buffers.