Anklang 0.3.0-460-gc4ef46ba
ASE — Anklang Sound Engine (C++)

« « « Anklang Documentation
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Functions
utils.hh File Reference
#include <ase/defs.hh>
#include <ase/logging.hh>
#include <experimental/type_traits>
#include <any>

Go to the source code of this file.

Classes

class  Ase::EventFd
 Wakeup facility for IPC. More...
 
class  Ase::CustomDataKey< T >
 CustomDataKey objects are used to identify and manage custom data members of CustomDataContainer objects. More...
 
class  Ase::CustomDataContainer
 

Namespaces

namespace  Ase
 The Anklang C++ API namespace.
 
namespace  Ase::Aux
 Auxillary algorithms brodly useful.
 

Typedefs

template<typename T >
using Ase::Aux::callable_reserve_int = decltype(std::declval< T & >().reserve(int(0)))
 
template<typename T >
using Ase::Aux::callable_minus = decltype(std::declval< T >() - std::declval< T >())
 

Functions

bool Ase::debug_enabled ()
 Check if any kind of debugging is enabled by $ASE_DEBUG.
 
bool Ase::debug_key_enabled (const char *conditional)
 Check if conditional is enabled by $ASE_DEBUG.
 
bool Ase::debug_key_enabled (const std::string &conditional) ASE_PURE
 
::std::string Ase::debug_key_value (const char *conditional)
 Retrieve the value assigned to debug key conditional in $ASE_DEBUG.
 
template<class ... A>
void Ase::debug (const char *cond, const char *format, const A &...args)
 
template<class ... A>
void Ase::fatal_error (const char *format, const A &...args) ASE_NORETURN
 
template<class ... A>
void Ase::warning (const char *format, const A &...args)
 
template<class... A>
void Ase::printout (const char *format, const A &...args) ASE_PRINTF(1
 
template<class... A>
void void Ase::printerr (const char *format, const A &...args) ASE_PRINTF(1
 
const charAse::ase_gettext (const String &untranslated)
 
template<class A0 , class... Ar>
const charAse::ase_gettext (const char *format, const A0 &a0, const Ar &...restargs)
 Translate a string, using the ASE locale.
 
String Ase::now_strftime (const String &format)
 
IconString Ase::MakeIcon::KwIcon (const String &keywords)
 Create an IconString consisting of keywords.
 
IconString Ase::MakeIcon::UcIcon (const String &unicode)
 Create an IconString consisting of a single/double unicode character.
 
IconString Ase::MakeIcon::SvgIcon (const String &svgdata)
 Create an IconString consisting of an SVG string.
 
IconString Ase::MakeIcon::operator""_uc (const char *key, size_t)
 Create an IconString consisting of a single/double unicode character.
 
IconString Ase::MakeIcon::operator""_icon (const char *key, size_t)
 Create an IconString consisting of keywords.
 
constexpr uint16_t Ase::uint16_swap_le_be (uint16_t v)
 Swap 16-Bit integers between __BIG_ENDIAN and __LITTLE_ENDIAN systems.
 
constexpr uint32_t Ase::uint32_swap_le_be (uint32_t v)
 Swap 32-Bit integers between __BIG_ENDIAN and __LITTLE_ENDIAN systems.
 
constexpr uint64_t Ase::uint64_swap_le_be (uint64_t v)
 Swap 64-Bit integers between __BIG_ENDIAN and __LITTLE_ENDIAN systems.
 
void Ase::debug_message (const char *cond, const std::string &message)
 Print a debug message, called from Ase::debug().
 
void Ase::diag_flush (uint8 code, const String &txt)
 Handle stdout and stderr printing with flushing.
 
String Ase::diag_prefix (uint8 code)
 Create prefix for warnings and errors.
 
template<class ... Args>
void Ase::debug (const char *cond, const char *format, const Args &...args)
 Issue a printf-like debugging message if cond is enabled by $ASE_DEBUG.
 
template<class ... Args>
void ASE_NORETURN Ase::fatal_error (const char *format, const Args &...args)
 
template<class ... Args>
void Ase::warning (const char *format, const Args &...args)
 Issue a printf-like warning message.
 
template<class... Args>
void Ase::printout (const char *format, const Args &...args)
 Print a message on stdout (and flush stdout) ala printf(), using the POSIX/C locale.
 
template<class... Args>
void Ase::printerr (const char *format, const Args &...args)
 Print a message on stderr (and flush stderr) ala printf(), using the POSIX/C locale.
 
template<class Container , class Iteratable >
Container Ase::Aux::container_copy (const Iteratable &source)
 Create a Container with copies of the elements of source.
 
template<typename RandIter , class Cmp , typename Arg , int case_lookup_or_sibling_or_insertion>
std::pair< RandIter, boolAse::Aux::binary_lookup_fuzzy (RandIter begin, RandIter end, Cmp cmp_elements, const Arg &arg)
 
template<typename RandIter , class Cmp , typename Arg >
std::pair< RandIter, boolAse::Aux::binary_lookup_insertion_pos (RandIter begin, RandIter end, Cmp cmp_elements, const Arg &arg)
 
template<typename RandIter , class Cmp , typename Arg >
RandIter Ase::Aux::binary_lookup_sibling (RandIter begin, RandIter end, Cmp cmp_elements, const Arg &arg)
 
template<typename RandIter , class Cmp , typename Arg >
RandIter Ase::Aux::binary_lookup (RandIter begin, RandIter end, Cmp cmp_elements, const Arg &arg)
 
template<class C >
size_t Ase::Aux::erase_first (C &container, const std::function< bool(typename C::value_type const &value)> &pred)
 Erase first element for which pred() is true in vector or list.
 
template<class C >
size_t Ase::Aux::erase_all (C &container, const std::function< bool(typename C::value_type const &value)> &pred)
 Erase all elements for which pred() is true in vector or list.
 
template<typename C >
bool Ase::Aux::contains (const C &container, const std::function< bool(typename C::value_type const &value)> &pred)
 Returns true if container element for which pred() is true.
 
template<class T , class Compare >
std::vector< T >::iterator Ase::Aux::insert_sorted (std::vector< T > &vec, const T &value, Compare compare)
 Insert value into sorted vec using binary_lookup_insertion_pos() with compare.
 
template<class IterableContainer >
ssize_t Ase::Aux::index_of (const IterableContainer &c, const std::function< bool(const typename IterableContainer::value_type &e)> &match)
 

Function Documentation

◆ KwIcon()

IconString Ase::MakeIcon::KwIcon ( const String keywords)

◆ operator""_icon()

IconString Ase::MakeIcon::operator""_icon ( const char key,
size_t   
)

Create an IconString consisting of keywords.

Definition at line 159 of file utils.cc.

References Ase::MakeIcon::KwIcon().

◆ operator""_uc()

IconString Ase::MakeIcon::operator""_uc ( const char key,
size_t   
)

Create an IconString consisting of a single/double unicode character.

Definition at line 181 of file utils.cc.

References Ase::MakeIcon::UcIcon().

◆ SvgIcon()

IconString Ase::MakeIcon::SvgIcon ( const String svgdata)

Create an IconString consisting of an SVG string.

Definition at line 188 of file utils.cc.

References std::string::assign(), std::string::empty(), return_unless, Ase::string_startswith(), std::string::substr(), and Ase::MakeIcon::SvgIcon().

Referenced by Ase::MakeIcon::SvgIcon().

◆ UcIcon()

IconString Ase::MakeIcon::UcIcon ( const String unicode)

Create an IconString consisting of a single/double unicode character.

Definition at line 166 of file utils.cc.

References std::string::assign(), Ase::MakeIcon::UcIcon(), Ase::unicode_is_character(), and Ase::utf8_to_unicode().

Referenced by Ase::MakeIcon::operator""_uc(), and Ase::MakeIcon::UcIcon().