Namespaces | |
| namespace | detail |
Classes | |
| class | bad_type_erased_constness |
| class | bad_type_erased_type |
| struct | BasicVTable |
| Struct that stores the size of a polymorphic object, as well as pointers to functions to copy, move or destroy the object. More... | |
| struct | class_from_member_ptr_impl |
| struct | class_from_member_ptr_impl< Ret(C::*)(Args...) const > |
| struct | class_from_member_ptr_impl< Ret(C::*)(Args...)> |
| struct | copyable_unique_ptr |
| struct | dynamic_load_error |
| Failed to load a DLL or SO file, or failed to access a function in it. More... | |
| struct | enumerate_t |
| struct | first_type_or_void |
| struct | first_type_or_void< First, Pack... > |
| struct | first_type_or_void<> |
| struct | invalid_duration_units |
| struct | invalid_duration_value |
| struct | iter_range_adapter |
| struct | join_opt |
| struct | join_quote_opt |
| struct | last_type |
| struct | last_type< Only > |
| struct | noop_delete |
Deleter for std::unique_ptr that just destructs the object, without deallocating. More... | |
| struct | set_intersection_iterable |
| struct | Timed |
| class | TypeErased |
| Class for polymorphism through type erasure. More... | |
Concepts | |
| concept | derived_from_TypeErased |
| concept | no_leading_allocator |
Typedefs | |
| template<class NewAlias , class... PossibleAliases> | |
| using | possible_alias_t = std::conditional_t< detail::any_is_same< NewAlias, PossibleAliases... >(), detail::dummy< NewAlias, PossibleAliases... >, NewAlias > |
If NewAlias is not the same type as any of PossibleAliases, the result is NewAlias. | |
| template<class M > | |
| using | class_from_member_ptr_impl_t = typename class_from_member_ptr_impl< M >::type |
| template<auto M> | |
| using | class_from_member_ptr_t = class_from_member_ptr_impl_t< decltype(M)> |
| template<class... Pack> | |
| using | last_type_t = typename last_type< Pack... >::type |
| template<class... Pack> | |
| using | first_type_or_void_t = typename first_type_or_void< Pack... >::type |
Functions | |
| template<class V > | |
| void | check_dim_msg (const V &v, auto sz, std::string msg) |
| template<class V > | |
| void | check_dim_msg (std::optional< V > &v, auto sz, std::string msg) |
| template<class V > | |
| void | check_dim (std::string name, V &&v, auto sz) |
| template<class M > | |
| void | check_dim_msg (const M &m, auto rows, auto cols, std::string msg) |
| template<class M > | |
| void | check_dim (std::string name, M &&m, auto rows, auto cols) |
| std::shared_ptr< void > | load_lib (const std::filesystem::path &so_filename, DynamicLoadFlags flags) |
| Load a DLL or SO file. | |
| void * | load_func (void *lib_handle, const std::string &name) |
| Get a pointer to a function inside of a loaded DLL or SO file. | |
| template<class Rep , class Period > | |
| std::string_view | parse_single_duration (std::chrono::duration< Rep, Period > &t, std::string_view s) |
Adds the first duration in the string s to the duration t. | |
| template<class Rep , class Period > | |
| void | parse_duration (std::chrono::duration< Rep, Period > &t, std::string_view s) |
Adds the sum of the durations in the string s to the duration t. | |
| template<class Rng > | |
| auto | enumerate (Rng &&rng) |
| template<class T > requires ( false) | |
| std::from_chars_result | from_chars (const char *first, const char *last, T &value, std::chars_format fmt=std::chars_format::general) |
| template<class T > requires ( false) | |
| std::from_chars_result | from_chars (const char *first, const char *last, T &value, int base=10) |
| template<class T , class... Args> requires ( std::floating_point<T> || false) | |
| std::from_chars_result | from_chars (const char *first, const char *last, T &value, std::chars_format fmt=std::chars_format::general) |
| template<class T , class... Args> requires ( std::integral<T> || false) | |
| std::from_chars_result | from_chars (const char *first, const char *last, T &value, int base=10) |
| template<class T > requires std::is_trivially_copyable_v<T> | |
| T * | start_lifetime_as_array (void *p, size_t n) noexcept |
| template<class T > requires std::is_trivially_copyable_v<T> | |
| const T * | start_lifetime_as_array (const void *p, size_t n) noexcept |
| template<class T > requires std::is_trivially_copyable_v<T> | |
| T * | start_lifetime_as (void *p) noexcept |
| template<class T > requires std::is_trivially_copyable_v<T> | |
| const T * | start_lifetime_as (const void *p) noexcept |
| template<std::ranges::viewable_range R1, std::ranges::viewable_range R2, class Comp = std::ranges::less, class Proj1 = std::identity, class Proj2 = std::identity> | |
| set_intersection_iterable< std::ranges::views::all_t< R1 >, std::ranges::views::all_t< R2 >, Comp, Proj1, Proj2 > | iter_set_intersection (R1 &&r1, R2 &&r2, Comp comp={}, Proj1 proj1={}, Proj2 proj2={}) |
| template<class SpMat , class Mat , class MaskVec > | |
| void | sparse_add_masked (const SpMat &R_full, Mat &&R, const MaskVec &mask) |
| R += R_full(mask,mask) | |
| template<class SpMat , class Mat , class MaskVec > | |
| void | sparse_add_masked_rows (const SpMat &S_full, Mat &&S, const MaskVec &mask) |
| S += S_full(mask,:) | |
| template<class SpMat , class CVec , class Vec , class MaskVec > | |
| void | sparse_matvec_add_masked_rows_cols (const SpMat &R, const CVec &v, Vec &&out, const MaskVec &mask_J, const MaskVec &mask_K) |
| out += R(mask_J,mask_K) * v(mask_K); | |
| template<class SpMat , class CVec , class Vec , class MaskVec > | |
| void | sparse_matvec_add_transpose_masked_rows (const SpMat &S, const CVec &v, Vec &&out, const MaskVec &mask) |
| out += S(mask,:)ᵀ * v(mask); | |
| auto | split (std::string_view full, std::string_view tok) |
Split the string full on the first occurrence of tok. | |
| auto | split_second (std::string_view full, std::string_view tok) |
Split the string s on the first occurrence of tok. | |
| std::string | join (std::ranges::input_range auto strings, join_opt opt={}) |
Join the list of strings into a single string, using the separator given by opt. | |
| std::string | join_quote (std::ranges::input_range auto strings, join_quote_opt opt={}) |
Join the list of strings into a single string, using the separator given by opt. | |
| void | sort_case_insensitive (auto &range) |
| Sort the given range of strings in-place in a case-insensitive manner. | |
| template<class Class , auto Method, class... ExtraArgs> | |
| constexpr auto | type_erased_wrapped () |
Returns a function that accepts a void pointer, casts it to the class type of the member function Method, launders it, and then invokes Method with it, passing on the arguments to Method. | |
| template<class VTable , class Allocator > | |
| constexpr size_t | default_te_buffer_size () |
| template<class... Types> | |
| constexpr size_t | required_te_buffer_size_for () |
| struct alpaqa::util::class_from_member_ptr_impl |
Collaboration diagram for class_from_member_ptr_impl< M >:| struct alpaqa::util::class_from_member_ptr_impl< Ret(C::*)(Args...) const > |
Collaboration diagram for class_from_member_ptr_impl< Ret(C::*)(Args...) const >:| Class Members | ||
|---|---|---|
| typedef add_const_t< C > | type | |
| struct alpaqa::util::class_from_member_ptr_impl< Ret(C::*)(Args...)> |
Collaboration diagram for class_from_member_ptr_impl< Ret(C::*)(Args...)>:| Class Members | ||
|---|---|---|
| typedef C | type | |
| struct alpaqa::util::first_type_or_void |
Collaboration diagram for first_type_or_void< Pack >:| struct alpaqa::util::first_type_or_void< First, Pack... > |
| struct alpaqa::util::first_type_or_void<> |
| struct alpaqa::util::join_opt |
| struct alpaqa::util::join_quote_opt |
Collaboration diagram for join_quote_opt:| Class Members | ||
|---|---|---|
| string_view | sep = ", " | |
| string_view | empty = "∅" | |
| string_view | quote_left = "\"" | |
| string_view | quote_right = "\"" | |
| struct alpaqa::util::last_type |
| struct alpaqa::util::last_type< Only > |
| using possible_alias_t = std::conditional_t<detail::any_is_same<NewAlias, PossibleAliases...>(), detail::dummy<NewAlias, PossibleAliases...>, NewAlias> |
If NewAlias is not the same type as any of PossibleAliases, the result is NewAlias.
If NewAlias is not distinct from PossibleAliases, the result is a dummy type, uniquely determined by NewAlias and PossibleAliases.
Definition at line 26 of file possible-alias.hpp.
Definition at line 23 of file type-traits.hpp.
| using class_from_member_ptr_t = class_from_member_ptr_impl_t<decltype(M)> |
Definition at line 27 of file type-traits.hpp.
| using last_type_t = typename last_type<Pack...>::type |
Definition at line 38 of file type-traits.hpp.
| using first_type_or_void_t = typename first_type_or_void<Pack...>::type |
Definition at line 51 of file type-traits.hpp.
Definition at line 23 of file check-dim.hpp.
Definition at line 43 of file check-dim.hpp.
| std::shared_ptr< void > load_lib | ( | const std::filesystem::path & | so_filename, |
| DynamicLoadFlags | flags | ||
| ) |
| std::string_view parse_single_duration | ( | std::chrono::duration< Rep, Period > & | t, |
| std::string_view | s | ||
| ) |
Adds the first duration in the string s to the duration t.
Definition at line 27 of file duration-parse.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:Adds the sum of the durations in the string s to the duration t.
Definition at line 70 of file duration-parse.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:| std::from_chars_result from_chars | ( | const char * | first, |
| const char * | last, | ||
| T & | value, | ||
| int | base = 10 |
||
| ) |
Definition at line 57 of file from_chars-wrapper.hpp.
| std::from_chars_result from_chars | ( | const char * | first, |
| const char * | last, | ||
| T & | value, | ||
| std::chars_format | fmt = std::chars_format::general |
||
| ) |
Definition at line 68 of file from_chars-wrapper.hpp.
| std::from_chars_result from_chars | ( | const char * | first, |
| const char * | last, | ||
| T & | value, | ||
| int | base = 10 |
||
| ) |
Definition at line 104 of file from_chars-wrapper.hpp.
Definition at line 21 of file lifetime.hpp.
Definition at line 29 of file lifetime.hpp.
Definition at line 39 of file lifetime.hpp.
| set_intersection_iterable< std::ranges::views::all_t< R1 >, std::ranges::views::all_t< R2 >, Comp, Proj1, Proj2 > iter_set_intersection | ( | R1 && | r1, |
| R2 && | r2, | ||
| Comp | comp = {}, |
||
| Proj1 | proj1 = {}, |
||
| Proj2 | proj2 = {} |
||
| ) |
R += R_full(mask,mask)
Definition at line 83 of file sparse-ops.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:S += S_full(mask,:)
Definition at line 93 of file sparse-ops.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:| void sparse_matvec_add_masked_rows_cols | ( | const SpMat & | R, |
| const CVec & | v, | ||
| Vec && | out, | ||
| const MaskVec & | mask_J, | ||
| const MaskVec & | mask_K | ||
| ) |
out += R(mask_J,mask_K) * v(mask_K);
Definition at line 104 of file sparse-ops.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:| void sparse_matvec_add_transpose_masked_rows | ( | const SpMat & | S, |
| const CVec & | v, | ||
| Vec && | out, | ||
| const MaskVec & | mask | ||
| ) |
out += S(mask,:)ᵀ * v(mask);
Definition at line 117 of file sparse-ops.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Split the string full on the first occurrence of tok.
Returns (s, "") if tok was not found.
Definition at line 14 of file string-util.hpp.
Here is the caller graph for this function:
|
inline |
Split the string s on the first occurrence of tok.
Returns ("", s) if tok was not found.
Definition at line 30 of file string-util.hpp.
Join the list of strings into a single string, using the separator given by opt.
Definition at line 53 of file string-util.hpp.
Here is the caller graph for this function:| std::string join_quote | ( | std::ranges::input_range auto | strings, |
| join_quote_opt | opt = {} |
||
| ) |
Join the list of strings into a single string, using the separator given by opt.
Each original string is quoted using the quote strings specified by opt
Definition at line 80 of file string-util.hpp.
Here is the caller graph for this function:Sort the given range of strings in-place in a case-insensitive manner.
Definition at line 102 of file string-util.hpp.
Here is the caller graph for this function:Returns a function that accepts a void pointer, casts it to the class type of the member function Method, launders it, and then invokes Method with it, passing on the arguments to Method.
The function can also accept additional arguments at the end, of type ExtraArgs.
Definition at line 165 of file type-erasure.hpp.
Definition at line 170 of file type-erasure.hpp.
Definition at line 181 of file type-erasure.hpp.