Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
Aleph::detail Namespace Reference

Classes

struct  is_stream_insertable
 
struct  is_stream_insertable< T, std::void_t< decltype(std::declval< std::ostringstream & >()<< std::declval< T >())> >
 

Functions

void build_msg_impl (std::ostringstream &)
 
template<typename T , typename... Args>
void build_msg_impl (std::ostringstream &stream, T &&value, Args &&... rest)
 
template<typename Container , typename Pred >
bool fallback_all_of (const Container &c, Pred &&pred)
 
template<typename Container , typename Pred >
bool fallback_any_of (const Container &c, Pred &&pred)
 
template<typename Container , typename Pred >
bool fallback_none_of (const Container &c, Pred &&pred)
 
template<typename Container , typename T , typename BinaryOp >
constexpr T ranges_fold_left (Container &&c, T init, BinaryOp &&op)
 Fallback fold_left using range-based for loop.
 
template<typename Container , typename Pred >
bool ranges_all_of (const Container &c, Pred &&pred)
 Fallback all_of using range-based for loop.
 
template<typename Container , typename Pred >
bool ranges_any_of (const Container &c, Pred &&pred)
 Fallback any_of using range-based for loop.
 
template<typename Container , typename Pred >
bool ranges_none_of (const Container &c, Pred &&pred)
 Fallback none_of using range-based for loop.
 
template<typename Container , typename Pred >
auto ranges_count_if (const Container &c, Pred &&pred)
 Fallback count_if using range-based for loop.
 

Variables

constexpr size_t tm_epoch_year = 1900u
 
constexpr size_t max_supported_year
 
constexpr time_t seconds_per_day
 
template<typename... Args>
constexpr bool are_stream_insertable_v
 

Function Documentation

◆ build_msg_impl() [1/2]

void Aleph::detail::build_msg_impl ( std::ostringstream &  )
inline

Definition at line 56 of file ah-msg.H.

Referenced by build_msg_impl().

◆ build_msg_impl() [2/2]

template<typename T , typename... Args>
void Aleph::detail::build_msg_impl ( std::ostringstream &  stream,
T &&  value,
Args &&...  rest 
)
inline

Definition at line 59 of file ah-msg.H.

References build_msg_impl(), and Aleph::maps().

◆ fallback_all_of()

bool Aleph::detail::fallback_all_of ( const Container c,
Pred &&  pred 
)

Definition at line 794 of file ah-ranges.H.

References pred.

◆ fallback_any_of()

bool Aleph::detail::fallback_any_of ( const Container c,
Pred &&  pred 
)

Definition at line 803 of file ah-ranges.H.

References pred.

Referenced by fallback_none_of().

◆ fallback_none_of()

bool Aleph::detail::fallback_none_of ( const Container c,
Pred &&  pred 
)

Definition at line 812 of file ah-ranges.H.

References fallback_any_of(), and pred.

◆ ranges_all_of()

bool Aleph::detail::ranges_all_of ( const Container c,
Pred &&  pred 
)

Fallback all_of using range-based for loop.

Definition at line 835 of file ah-ranges.H.

References Aleph::maps(), and pred.

Referenced by Aleph::stl_all().

◆ ranges_any_of()

bool Aleph::detail::ranges_any_of ( const Container c,
Pred &&  pred 
)

Fallback any_of using range-based for loop.

Definition at line 847 of file ah-ranges.H.

References Aleph::maps(), and pred.

Referenced by ranges_none_of(), and Aleph::stl_exists().

◆ ranges_count_if()

auto Aleph::detail::ranges_count_if ( const Container c,
Pred &&  pred 
)

Fallback count_if using range-based for loop.

Definition at line 868 of file ah-ranges.H.

References Aleph::count(), Aleph::maps(), and pred.

◆ ranges_fold_left()

constexpr T Aleph::detail::ranges_fold_left ( Container &&  c,
T  init,
BinaryOp &&  op 
)
constexpr

Fallback fold_left using range-based for loop.

Works with any container that supports range-based for loop. This is the function used by ahFunctional.H when std::ranges is unavailable.

Definition at line 824 of file ah-ranges.H.

References Aleph::init, and Aleph::maps().

Referenced by Aleph::foldl(), and Aleph::stl_foldl().

◆ ranges_none_of()

bool Aleph::detail::ranges_none_of ( const Container c,
Pred &&  pred 
)

Fallback none_of using range-based for loop.

Definition at line 859 of file ah-ranges.H.

References pred, and ranges_any_of().

Variable Documentation

◆ are_stream_insertable_v

template<typename... Args>
constexpr bool Aleph::detail::are_stream_insertable_v
inlineconstexpr
Initial value:
=
(is_stream_insertable<std::decay_t<Args>>::value && ...)

Definition at line 76 of file ah-msg.H.

◆ max_supported_year

constexpr size_t Aleph::detail::max_supported_year
inlineconstexpr
Initial value:
=
static_cast<size_t>(std::numeric_limits<int>::max()) + tm_epoch_year

Definition at line 58 of file ah-date.H.

Referenced by Aleph::to_time_t().

◆ seconds_per_day

constexpr time_t Aleph::detail::seconds_per_day
inlineconstexpr
Initial value:
=
static_cast<time_t>(24 * 60 * 60)

Definition at line 60 of file ah-date.H.

Referenced by Aleph::to_days().

◆ tm_epoch_year

constexpr size_t Aleph::detail::tm_epoch_year = 1900u
inlineconstexpr

Definition at line 57 of file ah-date.H.

Referenced by Aleph::to_time_t().