|
| struct | Configured |
| | This templated struct allows one to provide a variable typelist of config structs (or anything else for that matter), and provides a way to get and set these configs by looking up the structs by type. More...
|
| struct | Configured< TypeList< Ts... > > |
| | Configured specialization accepting the config types packaged in a TypeList. More...
|
| struct | IndexByType |
| struct | IndexByType< T, T, RemainingT... > |
| struct | IndexByType< T1, T2, RemainingT... > |
| struct | AreValidArguments |
| struct | AreValidArguments< true > |
| struct | DefaultConstruct |
| | Holds a default-constructed value of T, used to fill arguments not present when unpermuting. More...
|
| struct | IsTemplateParameter |
| | Base template, which says 'no', it's not in the pack. More...
|
| struct | IsTemplateParameter< F, S, T... > |
| | Specialized template, which says 'yes', if it is in the pack, by recursively expanding the pack. More...
|
| struct | IsTemplateParameter< T, TypeList< Ts... > > |
| | IsTemplateParameter specialization accepting the candidate types packaged in a TypeList. More...
|
| struct | Digest256 |
| | A 256-bit content digest – the output of Sha256, used as a persistent identity key. More...
|
| struct | Singleton |
| | A virtual singleton base class which can be used in a heirarchy to require a class to be singleton. More...
|
| struct | TypeList |
| | A basic typelist, in the style of Modern C++ Design, but using variadic templates. More...
|
| struct | ListCat |
| | Concatenate two typelists. More...
|
| struct | ListCat< TypeList< Ts... >, TypeList< Rs... > > |
| | A specialization of ListCat for joining two lists. More...
|
| struct | ListCat< TypeList< Ps... >, TypeList< Qs... >, TypeList< Rs... > > |
| | A specialization of ListCat for joining 3+ lists. More...
|
| struct | SharedPointerPolicy |
| | Pool pointer policy that holds objects via std::shared_ptr. More...
|
| class | Pool |
| | A process-wide cache of objects, held by pointer, that hands out shared references. More...
|
|
| template<std::size_t I, std::size_t J, typename T, typename... PresentT, typename... GivenT> |
| auto | GetByIndex (const std::tuple< PresentT... > &, const std::tuple< GivenT... > &absent_args) -> typename std::enable_if< I==sizeof...(PresentT), const T & >::type |
| | Get the value of type T, pulling from the given (absent) args when T is not among the present types.
|
| template<std::size_t I, std::size_t J, typename T, typename... PresentT, typename... GivenT> |
| auto | GetByIndex (const std::tuple< PresentT... > &present_args, const std::tuple< GivenT... > &) -> typename std::enable_if< I !=sizeof...(PresentT), const T & >::type |
| | Get the value of type T from the present args when T is among the present types (the I != sizeof... overload).
|
| template<std::size_t...> |
| void | ValidateTypes () |
| | Proxy function ensuring the types are distinct and indexable by type (compile-time check).
|
| Digest256 | Sha256 (std::string_view data) |
| | SHA-256 (FIPS 180-4) of a byte string.
|
| bool | IsEmojiBase (char32_t cp) |
| | True if cp is in a primary emoji / pictographic range, so a name may start with it (🎉, 👍, ❤, ⭐, a regional-indicator letter, ...).
|
| bool | IsEmojiGlue (char32_t cp) |
| | True if cp only extends an emoji cluster – valid mid-name to glue a multi-code-point emoji, but not meaningful as a name's first character.
|
template<std::size_t I, std::size_t J, typename T, typename... PresentT, typename... GivenT>
| auto bertini::detail::GetByIndex |
( |
const std::tuple< PresentT... > & | , |
|
|
const std::tuple< GivenT... > & | absent_args )->typenamestd::enable_if< I==sizeof...(PresentT), constT & >::type |
Get the value of type T, pulling from the given (absent) args when T is not among the present types.
template<std::size_t I, std::size_t J, typename T, typename... PresentT, typename... GivenT>
| auto bertini::detail::GetByIndex |
( |
const std::tuple< PresentT... > & | present_args, |
|
|
const std::tuple< GivenT... > & | )->typenamestd::enable_if< I!=sizeof...(PresentT), constT & >::type |
Get the value of type T from the present args when T is among the present types (the I != sizeof... overload).