![]() |
Lumiera 0.pre.04~rc.1
»edit your freedom«
|
Implementation namespace for support and library code.
Typedefs | |
| typedef vector< string > | VectS |
| typedef size_t | HashVal |
| a STL compatible hash value | |
| typedef lumiera_uid * | LUID |
| a Lumiera UID | |
| using | RawAddr = void const * |
| using | Random = RandomSequencer< std::mt19937_64 > |
| PRNG engine to use by default: 64bit Mersenne twister. | |
| using | SubMatch = std::smatch::value_type const & |
| typedef size_t | IxID |
Classes | |
| class | AddressExposingIter |
| wrapper for an existing Iterator type to expose the address of each value yielded. More... | |
| class | AllocationCluster |
| A pile of objects sharing common allocation and lifecycle. More... | |
| class | AllocatorHandle |
| Placeholder implementation for a custom allocator. More... | |
| class | AutoRegistered |
| Helper mixin template for implementing a type intended to participate in automatic element tracking. More... | |
| class | BranchCase |
| A Sum Type to hold alternative results from a branched evaluation. More... | |
| class | BuilderQualifierSupport |
| Mix-in to accept and apply an arbitrary sequence of qualifier functors. More... | |
| class | CallQueue |
A threadsafe queue for bound void(void) functors. More... | |
| class | CappedGen |
| Adapter to protect against data corruption caused by concurrent access. More... | |
| class | CheckedCore |
| Adapter to add sanity checks to a »state core«. More... | |
| class | ClassLock |
| A synchronisation protection guard employing a lock scoped to the parameter type as a whole, not an individual instance. More... | |
| class | Cmdline |
Abstraction of the usual int argc, int** argv-Commandline, to be able to treat it as a vector of strings. More... | |
| class | ConstIter |
| wrapper to expose values as const More... | |
| class | ContainerCore |
| Adapter to »piggy-back« a STL iterable container inline and expose it as »state core«. More... | |
| class | DelStash |
| Manage a collection of deleter functions. More... | |
| class | Depend |
| Access point to singletons and other kinds of dependencies designated by type. More... | |
| class | DependencyFactory |
| Helper to abstract creation and lifecycle of a dependency. More... | |
| class | DependInject |
| This framework allows to (re)configure the lib::Depend front-end for dependency-injection. More... | |
| class | DiagnosticContext |
| Diagnostic data frame to collect specific information concerning a scope. More... | |
| class | ElementTracker |
| Registry for tracking object instances. More... | |
| struct | EmptyBase |
| class | ExtensibleFilterIter |
| Additional capabilities for FilterIter, allowing to extend the filter condition underway. More... | |
| class | FamilyMember |
| Utility to produce member IDs for objects belonging to a "Family", as defined by a distinguishing type. More... | |
| struct | FilterCore |
| Implementation of the filter logic. More... | |
| class | FilterIter |
| Iterator tool filtering pulled data according to a predicate. More... | |
| class | FunHashDispatch |
| Dispatcher-table for state-less functions with a given signature. More... | |
| class | Handle |
| Generic opaque reference counting handle, for accessing a service and managing its lifecycle. More... | |
| struct | HashIndexed |
| A Mixin to add a private ID type to the target class, together with storage to hold an instance of this ID, getter and setter, and a templated version of the ID type which can be used to pass specific subclass type info. More... | |
| class | HeteroData |
| A setup with chained data tuples residing in distributed storage. More... | |
| class | HeteroData< meta::Nil > |
| class | HeteroData< meta::Node< StorageFrame< seg, DATA... >, TAIL > > |
| struct | IdentityCore |
| A neutral identity-function core, also serving as point-of reference how any core is intended to work. More... | |
| class | IncidenceCount |
| A recorder for concurrent incidences. More... | |
| class | IndexIter |
| Subscript-index based access to a container, packaged as iterator. More... | |
| class | InPlaceAnyHolder |
| Inline buffer to hold and own an object while concealing the concrete type. More... | |
| struct | InPlaceAnyHolder_unrelatedTypes |
| Alternative policy for accessing the contents without a common interface; use this policy if the intention is to use OpaqueHolder with a family of similar classes, without requiring all of them to be derived from a common base class. More... | |
| struct | InPlaceAnyHolder_useCommonBase |
| Standard policy for accessing the contents via a common base class interface. More... | |
| class | InPlaceBuffer |
| Buffer to place and maintain an object instance privately within another object. More... | |
| class | IterableDecorator |
| Decorator-Adapter to make a »*State Core*« iterable as Lumiera Forward Iterator. More... | |
| class | IterAdapter |
| Adapter for building an implementation of the »Lumiera Forward Iterator« concept. More... | |
| class | IterCursor |
| A cursor-like iterator with the ability to switch iteration direction. More... | |
| class | IterExplorer |
| Adapter to build a demand-driven tree expanding and exploring computation based on a custom opaque state core. More... | |
| struct | IterExploreSource |
| Iterator front-end to manage and operate a IterExplorer pipeline opaquely. More... | |
| struct | IterQueue |
| A Queue which can be pulled by iterating. More... | |
| class | IterSource |
| Iteration source interface to abstract a data source, which then can be accessed through IterAdapter as a frontend, allowing to pull individual elements until exhaustion. More... | |
| struct | IterStack |
| A Stack which can be popped by iterating. More... | |
| class | IterStateCore |
| Adapter to dress up an existing »Lumiera Forward Iterator« as »state core«. More... | |
| class | IterStateWrapper |
| Another Lumiera Forward Iterator building block, based on incorporating a state type as »*State Core*«, right into the iterator. More... | |
| class | IterTool |
| Standard functionality to build up any iterator tool. More... | |
| struct | IterType |
| Helper for type rewritings: get the element type for an iterator like entity. More... | |
| struct | IterType< Iter< TY, CON > > |
| struct | IterType< RangeIter< IT > > |
| class | LazyInit |
| Mix-in for lazy/delayed initialisation of an embedded functor. More... | |
| struct | Limited |
| A Result Value confined into fixed bounds. More... | |
| class | LinkedElements |
| Intrusive single linked list, possibly taking ownership of node elements. More... | |
| class | Literal |
| Inline string literal. More... | |
| struct | NullValue |
| Singleton holder for NIL or default value objects. More... | |
| class | NumIter |
| Enumerate all "numbers" within a range. More... | |
| class | OpaqueHolder |
| Inline buffer to hold and own an object while concealing the concrete type. More... | |
| class | OptionalRef |
| Optional or switchable link to an existing object. More... | |
| class | P |
| Customised refcounting smart pointer template, built upon std::shared_ptr, but forwarding type relationships and ordering operators to the pointee objects. More... | |
| class | PathArray |
| Abstraction for path-like topological coordinates. More... | |
| class | PlantingHandle |
| A handle to allow for safe »remote implantation« of an unknown subclass into a given opaque InPlaceBuffer, without having to disclose the concrete buffer type or size. More... | |
| class | PolymorphicValue |
| Template to build polymorphic value objects. More... | |
| class | PtrDerefIter |
| wrapper for an existing Iterator type, automatically dereferencing the output of the former. More... | |
| class | QueryText |
| Syntactical query representation. More... | |
| class | RandomDraw |
| A component and builder to draw limited parameter values based on some source of randomness (or hash input). More... | |
| class | RandomSequencer |
| Access point to a selection of random number sources. More... | |
| class | RangeIter |
Accessing a STL element range through a Lumiera forward iterator, An instance of this iterator adapter is completely self-contained and allows to iterate once over the range of elements, until pos==end. More... | |
| class | Result |
| Representation of the result of some operation, EITHER a value or a failure. More... | |
| class | Result< void > |
| The base case is just to capture success or failure, without returning any value result. More... | |
| class | ScopedCollection |
| A fixed collection of non-copyable polymorphic objects. More... | |
| class | ScopedPtrVect |
| Simple vector based collection of pointers, managing lifecycle of the pointed-to objects. More... | |
| class | SearchPathSplitter |
| Helper: Access a path Specification as a sequence of filesystem Paths. More... | |
| class | SeedNucleus |
| Establishes a seed point for any instance or performance. More... | |
| class | Several |
| Abstraction: Fixed array of elements. More... | |
| class | SeveralBuilder |
Builder to create and populate a lib::Several<I>. More... | |
| class | SingleValCore |
| Implementation of a singleton value holder, which discards the contained value once "iterated". More... | |
| class | SingleValIter |
| Pseudo-Iterator to yield just a single value. More... | |
| class | SkipRepetition |
Helper: predicate returning true whenever the argument value changes during a sequence of invocations. More... | |
| struct | StorageFrame |
| individual storage frame in a chain, holding a data tuple More... | |
| struct | StorageLoc |
| linked list of StorageFrame elements More... | |
| class | Symbol |
| Token or Atom with distinct identity. More... | |
| class | SymbolTable |
| Table for automatically interned strings. More... | |
| class | Sync |
| Facility for monitor object based locking. More... | |
| class | SyncBarrier |
| A one time N-fold mutual synchronisation barrier. More... | |
| class | Thread |
| A thin convenience wrapper to simplify thread-handling. More... | |
| class | ThreadHookable |
| Extended variant of the standard case, allowing to install callbacks (hook functions) to be invoked during thread lifecycle: More... | |
| class | ThreadJoinable |
Variant of the standard case, requiring to wait and join() on the termination of this thread. More... | |
| class | TransformingCore |
| Implementation of custom processing logic. More... | |
| class | TransformIter |
| Iterator tool treating pulled data by a custom transformation (function) More... | |
| class | TrojanFun |
| »Trojan Function« builder. More... | |
| class | TypedAllocationManager |
| Foundation for a custom allocation manager, tracking the created objects by smart-ptrs. More... | |
| class | TypedContext |
| Provide type-IDs for a specific context. More... | |
| class | TypedCounter |
| Utility providing a set of counters, each tied to a specific type. More... | |
| class | UninitialisedDynBlock |
| Managed uninitialised Heap-allocated storage with array like access. More... | |
| class | UninitialisedStorage |
| Block of raw uninitialised storage with array like access. More... | |
| class | UniqueMallocOwner |
| Ownership token for a piece of heap memory allocated in plain-C style. More... | |
| class | Variant |
| Typesafe union record. More... | |
| class | VariantO |
| A variant wrapper (typesafe union) capable of holding a value of any of a bounded collection of types. More... | |
| struct | VerbHolder |
| struct | VerbHolder< REC, RET(ARGS...)> |
| Building block: actual storage for a "verb" (function pointer), together with the pre-bound invocation arguments for this specific operation. More... | |
| struct | VerbInvoker |
| Building block: the Interface to cause the invocation. More... | |
| class | VerbPack |
| A self-contained token to embody a specific yet abstracted operation, together with a concrete set of suitable arguments. More... | |
| class | VerbToken |
Action token implemented by double dispatch to a handler function, as defined in the "receiver" interface (parameter REC). More... | |
| class | VerbToken< REC, RET(ARGS...)> |
| class | WrappedLumieraIter |
| Standard implementation of the IterSource interface: a wrapped "Lumiera Forward Iterator". More... | |
| class | ZombieCheck |
| Automatic lifecycle tracker, to produce an alarm when accessing objects after deletion. More... | |
Functions | |
| template<class FUN , typename PAR > | |
| auto | binarySearch_inner (FUN &&fun, PAR lower, PAR upper, PAR epsilon) |
| binary search: actual search loop | |
| template<class FUN , typename PAR > | |
| auto | binarySearch_upper (FUN &&fun, PAR lower, PAR upper, PAR epsilon) |
| entrance point to binary search to ensure the upper point indeed fulfils the test. | |
| template<class FUN , typename PAR > | |
| auto | binarySearch (FUN &&fun, PAR lower, PAR upper, PAR epsilon) |
| template<class I1 , class I2 > | |
| bool | operator== (PtrDerefIter< I1 > const &il, PtrDerefIter< I2 > const &ir) |
| Supporting equality comparisons... | |
| template<class I1 , class I2 > | |
| bool | operator!= (PtrDerefIter< I1 > const &il, PtrDerefIter< I2 > const &ir) |
| template<class IT > | |
| auto | ptrDeref (IT iter) |
| Convenience shortcut to dereference pointers yielded from the wrapped iterator. | |
| template<class I1 , class I2 > | |
| bool | operator== (AddressExposingIter< I1 > const &il, AddressExposingIter< I2 > const &ir) |
| Supporting equality comparisons... | |
| template<class I1 , class I2 > | |
| bool | operator!= (AddressExposingIter< I1 > const &il, AddressExposingIter< I2 > const &ir) |
| template<class P1 , class P2 , class CON > | |
| bool | operator== (IterAdapter< P1, CON > const &il, IterAdapter< P2, CON > const &ir) |
| Supporting equality comparisons... | |
| template<class P1 , class P2 , class CON > | |
| bool | operator!= (IterAdapter< P1, CON > const &il, IterAdapter< P2, CON > const &ir) |
| template<class ST , class T1 , class T2 > | |
| bool | operator== (IterStateWrapper< ST, T1 > const &il, IterStateWrapper< ST, T2 > const &ir) |
| Supporting equality comparisons of equivalent iterators (same state type)... | |
| template<class ST , class T1 , class T2 > | |
| bool | operator!= (IterStateWrapper< ST, T1 > const &il, IterStateWrapper< ST, T2 > const &ir) |
| template<class I1 , class I2 > | |
| bool | operator== (RangeIter< I1 > const &il, RangeIter< I2 > const &ir) |
| Supporting equality comparisons... | |
| template<class I1 , class I2 > | |
| bool | operator!= (RangeIter< I1 > const &il, RangeIter< I2 > const &ir) |
| template<typename INT > | |
| NumIter< INT > | eachNum (INT start=std::numeric_limits< INT >::min(), INT end=std::numeric_limits< INT >::max()) |
| convenience function to iterate "each number" | |
| template<class I1 , class I2 > | |
| bool | operator== (ConstIter< I1 > const &il, ConstIter< I2 > const &ir) |
| Supporting equality comparisons... | |
| template<class I1 , class I2 > | |
| bool | operator!= (ConstIter< I1 > const &il, ConstIter< I2 > const &ir) |
| template<class IT > | |
| auto | explore (IT &&srcSeq) |
| start building a IterExplorer by suitably wrapping the given iterable source. | |
| template<typename T > | |
| IterQueue< T > | elements (T const &elm) |
| convenience free function to build an iterable sequence | |
| template<typename T > | |
| IterQueue< T > | elements (T const &e0, T const &e1) |
| template<typename T > | |
| IterQueue< T > | elements (T const &e0, T const &e1, T const &e2) |
| template<typename T > | |
| IterQueue< T > | elements (T const &e0, T const &e1, T const &e2, T const &e3) |
| template<typename T > | |
| IterQueue< T > | elements (T const &e0, T const &e1, T const &e2, T const &e3, T const &e4) |
| template<class... ITS> | |
| auto | zip (ITS &&...iters) |
| Build a tuple-combining iterator builder. | |
| template<class... ITS> | |
| auto | izip (ITS &&...iters) |
| tuple-combining iterator prefixed by index sequence | |
| template<class CX > | |
| bool | operator== (IterTool< CX > const &it1, IterTool< CX > const &it2) |
| template<class CX > | |
| bool | operator!= (IterTool< CX > const &ito1, IterTool< CX > const &ito2) |
| template<class IT , typename PRED > | |
| auto | filterIterator (IT const &src, PRED filterPredicate) |
| Build a FilterIter: convenience free function shortcut, picking up the involved types automatically. | |
| template<class IT , typename PRED > | |
| auto | filterIterator (IT &&src, PRED filterPredicate) |
| template<class VAL > | |
| auto | singleValIterator (VAL &&something) |
| Build a SingleValIter: convenience free function shortcut, to pick up just any value and wrap it as Lumiera Forward Iterator. | |
| template<class VAL > | |
| auto | nilIterator () |
| not-anything-at-all iterator | |
| template<class IT , typename FUN > | |
| auto | transformIterator (IT const &src, FUN processingFunc) |
| Build a TransformIter: convenience free function shortcut, picking up the involved types automatically. | |
| template<class IT , typename FUN > | |
| auto | transformIterator (IT &&src, FUN processingFunc) |
| template<class IT , class CON > | |
| void | append_all (IT iter, CON &container) |
| template<class IT > | |
| IT::value_type | pull_last (IT iter) |
| template<class IT > | |
| auto | filterRepetitions (IT const &source) |
| filters away repeated values emitted by source iterator | |
| template<class IT > | |
| auto | filterRepetitions (IT &&source) |
| template<class N > | |
| auto & | asLinkedElements (N *const &anchor) |
| transiently reinterpret an element pointer as const LinkedElements, allowing to count, iterate or subscript a chain of elements | |
| template<typename T > | |
| OptionalRef< T > | optionalRefTo (T &target) |
| template<typename X , typename... ARGS> | |
| P< X > | makeP (ARGS &&... ctorArgs) |
| Helper to create and manage by lib::P. | |
| template<size_t cl, size_t cr> | |
| bool | operator== (PathArray< cl > const &l, PathArray< cr > const &r) |
| Equality comparison of arbitrary PathArray objects. | |
| template<size_t cl, size_t cr> | |
| bool | operator!= (PathArray< cl > const &l, PathArray< cr > const &r) |
| HashVal | hash_value (QueryText const &entry) |
| support using queries in hashtables. | |
| SeedNucleus & | seedFromDefaultGen () |
| draw seed another Generator from the default RandomSequencer | |
| void | randomiseRandomness () |
| inject true randomness into the defaultGen | |
| int | rani (uint bound=_iBOUND()) |
| double | ranRange (double start, double bound) |
| double | ranNormal (double mean=0.0, double stdev=1.0) |
| lib::HashVal | ranHash () |
| template<class GEN > | |
| auto | buildCappedSubSequence (RandomSequencer< GEN > &src) |
| template<typename VAL , typename = lib::meta::disable_if<std::is_invocable<VAL>>> | |
| Result (VAL &&) -> Result< VAL > | |
| deduction guide: allow perfect forwarding of a any result into the ctor call. | |
| template<typename FUN , typename... ARGS> | |
| Result (FUN &&, ARGS &&...) -> Result< std::invoke_result_t< FUN, ARGS... > > | |
| deduction guide: find out about result value to capture from a generic callable. | |
| fs::path | findExePath () |
| retrieve the location of the executable | |
| string | replaceMagicLinkerTokens (string const &src) |
| replace $ORIGIN tokens in the given string | |
| string | resolveModulePath (fs::path moduleName, string searchPath="") |
| helper to establish the location to search for loadable modules, configuration files, icons and further resources. | |
| template<typename I , typename E = I> | |
| SeveralBuilder< I, E > | makeSeveral () |
| Entrance Point: start building a lib::Several instance. | |
| template<typename X > | |
| SeveralBuilder< X > | makeSeveral (std::initializer_list< X > ili) |
| HashVal | hash_value (Literal literal) |
| generate hash value based on the Literal's contents. | |
| HashVal | hash_value (Symbol sym) |
| hash value for Symbols is directly based on the symbol table entry | |
| constexpr bool | operator== (Literal const &s1, Literal const &s2) |
| constexpr bool | operator== (Symbol const &s1, Symbol const &s2) |
| constexpr bool | operator== (CStr s1, Literal s2) |
| constexpr bool | operator== (Symbol s1, CStr s2) |
| constexpr bool | operator== (Literal s1, Symbol s2) |
| constexpr bool | operator== (Literal s1, std::string const &s2) |
| constexpr bool | operator== (Symbol s1, std::string const &s2) |
| std::string | operator+ (std::string str, Literal const &sym) |
| string concatenation | |
| std::string | operator+ (Literal const &sym, std::string str) |
| template<typename FUN , typename... ARGS> | |
| ThreadJoinable (string const &, FUN &&, ARGS &&...) -> ThreadJoinable< std::invoke_result_t< FUN, ARGS... > > | |
| deduction guide: find out about result value to capture from a generic callable. | |
| template<class TAR = ThreadHookable> | |
| void | launchDetached (ThreadHookable::Launch &&launchBuilder) |
| Launch an autonomous self-managing thread (and forget about it). | |
| template<class TAR = ThreadHookable, typename... INVO> | |
| void | launchDetached (string const &threadID, INVO &&...args) |
| Launch an autonomous self-managing thread (and forget about it). | |
| template<class TAR , typename... ARGS> | |
| void | launchDetached (string const &threadID, void(TAR::*memFun)(ARGS...), ARGS ...args) |
| Special variant bind a member function of the subclass into the autonomous thread. | |
| template<class TAR , typename... ARGS> | |
| void | launchDetached (void(TAR::*memFun)(ARGS...), ARGS ...args) |
| Special variant without explicitly given thread-ID. | |
Variables | |
| Random | defaultGen {eternalNucleus} |
| a global default RandomSequencer for mundane purposes | |
| Random | entropyGen {entropyNucleus} |
| a global RandomSequencer seeded with real entropy | |
| const size_t | STRING_MAX_RELEVANT = LUMIERA_IDSTRING_MAX_RELEVANT |
| safety guard: maximum number of chars to process. | |
| typedef vector<string> VectS |
Definition at line 39 of file cmdline.hpp.
| typedef size_t HashVal |
a STL compatible hash value
Definition at line 52 of file hash-value.h.
| typedef lumiera_uid* LUID |
a Lumiera UID
Definition at line 55 of file hash-value.h.
| using RawAddr = void const* |
Definition at line 92 of file lazy-init.hpp.
| using Random = RandomSequencer<std::mt19937_64> |
PRNG engine to use by default: 64bit Mersenne twister.
Definition at line 120 of file random.hpp.
| using SubMatch = std::smatch::value_type const& |
Definition at line 41 of file searchpath.hpp.
| typedef size_t IxID |
Definition at line 67 of file typed-counter.hpp.
| struct lib::IterType |
Inheritance diagram for IterType< TY >:
Collaboration diagram for IterType< TY >:| struct lib::IterType< Iter< TY, CON > > |
| struct lib::VerbHolder |
Collaboration diagram for VerbHolder< REC, SIG >:| class lib::VerbToken |
Collaboration diagram for VerbToken< REC, SIG >:
|
inline |
binary search: actual search loop
| fun | bool(PAR) perform probe and decide criterion. |
fun(lower) must be false and fun(upper) must be true Definition at line 56 of file binary-search.hpp.
References ASSERT_VALID_SIGNATURE.
Referenced by binarySearch_upper().
Here is the caller graph for this function:
|
inline |
entrance point to binary search to ensure the upper point indeed fulfils the test.
If this is not the case, the search domain is shifted up, but also expanded so that the given upper point is still located within, but close to the lower end.
fun(lower) must be false Definition at line 81 of file binary-search.hpp.
References binarySearch_inner().
Referenced by binarySearch(), and BreakingPoint< CONF >::conductBinarySearch().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 99 of file binary-search.hpp.
References binarySearch_upper().
Here is the call graph for this function:| bool operator== | ( | PtrDerefIter< I1 > const & | il, |
| PtrDerefIter< I2 > const & | ir | ||
| ) |
Supporting equality comparisons...
Definition at line 195 of file iter-adapter-ptr-deref.hpp.
References PtrDerefIter< IT >::getBase().
Here is the call graph for this function:| bool operator!= | ( | PtrDerefIter< I1 > const & | il, |
| PtrDerefIter< I2 > const & | ir | ||
| ) |
Definition at line 198 of file iter-adapter-ptr-deref.hpp.
| auto ptrDeref | ( | IT | iter | ) |
Convenience shortcut to dereference pointers yielded from the wrapped iterator.
Definition at line 204 of file iter-adapter-ptr-deref.hpp.
Referenced by ViewHook_test::reOrderHooked().
Here is the caller graph for this function:| bool operator== | ( | AddressExposingIter< I1 > const & | il, |
| AddressExposingIter< I2 > const & | ir | ||
| ) |
Supporting equality comparisons...
Definition at line 318 of file iter-adapter-ptr-deref.hpp.
References AddressExposingIter< IT >::getBase().
Here is the call graph for this function:| bool operator!= | ( | AddressExposingIter< I1 > const & | il, |
| AddressExposingIter< I2 > const & | ir | ||
| ) |
Definition at line 321 of file iter-adapter-ptr-deref.hpp.
|
inline |
Supporting equality comparisons...
Definition at line 338 of file iter-adapter.hpp.
References IterAdapter< POS, CON >::pos_.
|
inline |
Definition at line 341 of file iter-adapter.hpp.
|
inline |
Supporting equality comparisons of equivalent iterators (same state type)...
Definition at line 474 of file iter-adapter.hpp.
References IterStateWrapper< ST, T >::core_, IterStateWrapper< ST, T >::empty(), and IterStateWrapper< ST, T >::isValid().
Here is the call graph for this function:
|
inline |
Definition at line 482 of file iter-adapter.hpp.
|
inline |
Supporting equality comparisons...
Definition at line 899 of file iter-adapter.hpp.
References RangeIter< IT >::getPos().
Here is the call graph for this function:
|
inline |
Definition at line 902 of file iter-adapter.hpp.
|
inline |
convenience function to iterate "each number"
Definition at line 1016 of file iter-adapter.hpp.
References eachNum().
Referenced by eachNum(), IterAdapter_test::enumerate(), IterZip_test::verify_exploration(), and IterZip_test::verify_iteration().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Supporting equality comparisons...
Definition at line 1134 of file iter-adapter.hpp.
References ConstIter< IT >::getBase().
Here is the call graph for this function:
|
inline |
Definition at line 1137 of file iter-adapter.hpp.
|
inline |
start building a IterExplorer by suitably wrapping the given iterable source.
This function starts a Builder expression. It picks up the given source, which can be something "sequence-like" or "iterable", and will automatically be wrapped and adapted.
begin(), end())The resulting IterExplorer instance can directly be used as "Lumiera Forward Iterator". However, typically you might want to invoke the builder functions to configure further processing steps in a processing pipeline...
A typical usage might be...
In this example, a CountDown state core is used, as defined in iter-explorer-test.cpp
Definition at line 2189 of file iter-explorer.hpp.
References explore().
Referenced by Dummy< i >::Dummy(), Dummy< i >::~Dummy(), Num< i >::~Num(), FlowDiagnostic< CONF >::allEpochs(), TestChainLoad< maxFan >::allNodes(), FakeCanvas::allWidgetIDs(), SeveralBuilder< I, E, POL >::appendAll(), VerbVisitorDispatch_test::apply_different_receivers(), TreeStructureNavigator::buildIterator(), lib::iter::buildIterTuple(), IterZip_test::buildIterTuple(), lib::iter::anonymous_namespace{iter-chain-search.hpp}::buildSearchFilter(), Num< i >::calc(), MemoryPool::calcAllocSize(), SyncLocking_test::can_calc_without_Error(), IterZip_test::demo_construction(), Statistic_test::demonstrate_DataSpan(), IterExplorer_test::demonstrate_LayeredEvaluation(), IncidenceCount::evaluate(), explore(), TrackProfile::filterSegment(), TestChainLoad< maxFan >::ScheduleCtx::getScheduleSeq(), SeveralBuilder< I, E, POL >::moveAll(), lib::test::anonymous_namespace{iter-zip-test.cpp}::numS(), SyncBarrier_test::run(), IndexIter_test::simpleIteration(), lib::test::anonymous_namespace{sync-barrier-test.cpp}::sumLocals(), Dispatcher::PipelineBuilder< SRC >::timeRange(), AllocationCluster_test::use_as_Allocator(), IterExplorer_test::verify_aggregatingGroupItration(), IterExplorer_test::verify_asIterSource(), IterExplorer_test::verify_combinedExpandTransform(), IterExplorer_test::verify_customProcessingLayer(), IterExplorer_test::verify_dedup(), IterExplorer_test::verify_depthFirstExploration(), IterExplorer_test::verify_effuse(), IterExplorer_test::verify_elementGroupingOperation(), IterExplorer_test::verify_expand_rootCurrent(), IterExplorer_test::verify_expandOperation(), IterZip_test::verify_exploration(), IterExplorer_test::verify_FilterChanges(), IterExplorer_test::verify_FilterIterator(), DiagnosticContext_test::verify_heavilyParallelUsage(), IterZip_test::verify_iteration(), IterExplorer_test::verify_IterSource(), MockSupport_test::verify_MockPrerequisites(), TextTemplate_test::verify_parsing(), IterExplorer_test::verify_reduceVal(), IterZip_test::verify_references(), IterExplorer_test::verify_scheduledExpansion(), IterExplorer_test::verify_transformOperation(), IterExplorer_test::verify_untilStopTrigger(), IterExplorer_test::verify_wrappedIterator(), IterExplorer_test::verify_wrappedState(), ThreadWrapper_test::verifyConcurrentExecution(), and zip().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
convenience free function to build an iterable sequence
Definition at line 292 of file iter-stack.hpp.
References IterQueue< TY >::feed().
Referenced by LinkedElements< N, ALO >::LinkedElements(), ScopedPtrVect< T >::allPtrs(), LinkedElements_test::iterating(), LinkedElements_test::populate_by_iterator(), LinkedElements< N, ALO >::pushAll(), IterQueue_test::run(), LinkedElements_test::simpleUsage(), LinkedElements_test::verify_customAllocator(), LinkedElements_test::verify_ExceptionSafety(), LinkedElements_test::verify_nonOwnership(), and LinkedElements_test::verify_RAII_safety().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 299 of file iter-stack.hpp.
References IterQueue< TY >::feed().
Here is the call graph for this function:
|
inline |
Definition at line 306 of file iter-stack.hpp.
References IterQueue< TY >::feed().
Here is the call graph for this function:
|
inline |
Definition at line 313 of file iter-stack.hpp.
References IterQueue< TY >::feed().
Here is the call graph for this function:
|
inline |
Definition at line 320 of file iter-stack.hpp.
References IterQueue< TY >::feed().
Here is the call graph for this function:
|
inline |
Build a tuple-combining iterator builder.
| iters | an arbitrary sequence of iterable entities |
Definition at line 138 of file iter-zip.hpp.
References explore(), lib::meta::mapEach(), and zip().
Referenced by izip(), IterZip_test::simpleUsage(), IterZip_test::verify_exploration(), IterZip_test::verify_iteration(), IterZip_test::verify_pipelining(), and zip().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
tuple-combining iterator prefixed by index sequence
Definition at line 152 of file iter-zip.hpp.
Referenced by izip(), IterZip_test::simpleUsage(), IterZip_test::verify_iteration(), and IterZip_test::verify_references().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 249 of file itertools.hpp.
|
inline |
Definition at line 258 of file itertools.hpp.
|
inline |
Build a FilterIter: convenience free function shortcut, picking up the involved types automatically.
| filterPredicate | to be invoked for each source element |
Definition at line 372 of file itertools.hpp.
Referenced by IterTools_test::buildFilterIterator(), filterRepetitions(), and filterRepetitions().
Here is the caller graph for this function:
|
inline |
Definition at line 379 of file itertools.hpp.
|
inline |
Build a SingleValIter: convenience free function shortcut, to pick up just any value and wrap it as Lumiera Forward Iterator.
Definition at line 655 of file itertools.hpp.
References singleValIterator().
Referenced by IterTools_test::buildWrappedSingleElement(), lib::iter_source::singleVal(), singleValIterator(), and IterExplorer_test::verify_depthFirstExploration().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
not-anything-at-all iterator
Definition at line 664 of file itertools.hpp.
|
inline |
Build a TransformIter: convenience free function shortcut, picking up the involved types automatically.
| processingFunc | to be invoked for each source element |
Definition at line 788 of file itertools.hpp.
References transformIterator().
Referenced by JobPlanning::buildDependencyPlanning(), IterTools_test::buildTransformingIterator(), lib::diff::test::anonymous_namespace{diff-tree-application-simple-test.cpp}::contents(), JobTicket::getPrerequisites(), Record< VAL >::keys(), Record< VAL >::operator std::string(), lib::diff::renderCompact(), lib::diff::anonymous_namespace{test-mutation-target.hpp}::renderRecord(), TestMutationTarget::showContent(), TestMutationTarget::showSrcBuffer(), util::stringify(), lib::iter_source::anonymous_namespace{iter-source.hpp}::takePairFirst(), lib::iter_source::anonymous_namespace{iter-source.hpp}::takePairSecond(), lib::iter_source::transform(), transformIterator(), transformIterator(), and Record< VAL >::vals().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 796 of file itertools.hpp.
References transformIterator().
Here is the call graph for this function:
|
inline |
Definition at line 810 of file itertools.hpp.
References append_all().
Referenced by append_all(), lib::diff::test::anonymous_namespace{generic-record-test.cpp}::contents(), DiffListGeneration_test::run(), and MutationMessage_test::verify_builder().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 819 of file itertools.hpp.
Referenced by GenNodeLocationQuery::getCurrentWindow(), and IterTools_test::verifyPullLast().
Here is the caller graph for this function:
|
inline |
filters away repeated values emitted by source iterator
Definition at line 846 of file itertools.hpp.
References filterIterator().
Referenced by lib::iter_source::eachDistinctKey(), and IterTools_test::verify_filterRepetitions().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 854 of file itertools.hpp.
References filterIterator().
Here is the call graph for this function:| auto & asLinkedElements | ( | N *const & | anchor | ) |
transiently reinterpret an element pointer as const LinkedElements, allowing to count, iterate or subscript a chain of elements
Definition at line 413 of file linked-elements.hpp.
Referenced by AllocationCluster::StorageManager::determineExtentCnt().
Here is the caller graph for this function:| OptionalRef< T > optionalRefTo | ( | T & | target | ) |
Definition at line 143 of file optional-ref.hpp.
|
inline |
Helper to create and manage by lib::P.
| X | the type of the new object to create on the heap |
| ctorArgs | arbitrary arguments to pass to ctor of X |
Definition at line 142 of file p.hpp.
References makeP().
Referenced by makeP().
Here is the call graph for this function:
Here is the caller graph for this function:| bool operator== | ( | PathArray< cl > const & | l, |
| PathArray< cr > const & | r | ||
| ) |
Equality comparison of arbitrary PathArray objects.
Definition at line 559 of file path-array.hpp.
References PathArray< chunk_size >::begin(), and PathArray< chunk_size >::size().
Here is the call graph for this function:| bool operator!= | ( | PathArray< cl > const & | l, |
| PathArray< cr > const & | r | ||
| ) |
Definition at line 576 of file path-array.hpp.
support using queries in hashtables.
Definition at line 52 of file query-text.cpp.
Referenced by SymbolHashtable_test::checkHashFunction(), Symbol_test::checkLiteral(), Symbol_test::checkSymbolCreation(), and QueryText_test::useHashValue().
Here is the caller graph for this function:| SeedNucleus & seedFromDefaultGen | ( | ) |
draw seed another Generator from the default RandomSequencer
Definition at line 74 of file random.cpp.
Referenced by TestThread::TestThread(), Test::makeRandGen(), and BusTerm_test::pushDiff().
Here is the caller graph for this function:| void randomiseRandomness | ( | ) |
inject true randomness into the defaultGen
Definition at line 83 of file random.cpp.
References defaultGen, entropyGen, and RandomSequencer< GEN >::reseed().
Here is the call graph for this function:
|
inline |
Definition at line 135 of file random.hpp.
References defaultGen, RandomSequencer< GEN >::i(), and rani().
Referenced by Dummy::Dummy(), DummyObj< siz >::DummyObj(), DummyType::DummyType(), N< n >::N(), Probe< siz >::Probe(), ShortBlocker::ShortBlocker(), Sub::Sub(), Sub< i >::Sub(), DiagnosticContext_test::TestThread::TestThread(), Tracker::Tracker(), Variant_test::accessVariant(), Imp< ii, BASE >::apiFunc(), RandomConcurrent_test::benchmark_random_gen(), ScopedCollection_test::building_RAII_Style(), ScopedCollection_test::building_StackStyle(), TimeBasics_test::checkComponentBreakdown(), DelStash_test::checkCustomKill(), SymbolHashtable_test::checkHashFunction(), QuantiserBasics_test::checkSimpleQuantisation(), Checker< POLICY >::createVal(), LateBindInstance_test::demonstrateUsage(), lib::test::anonymous_namespace{allocation-cluster-test.cpp}::fill(), lib::query::test::garbage_query(), lib::query::test::garbage_term(), lib::time::test::anonymous_namespace{time-formats-test.cpp}::generateRandomFrameNr(), TestControl::Page2::pickDummyID(), ItemWrapper_test::produceResult(), TimeQuantisation_test::random_or_get(), TimeValue_test::random_or_get(), TimeControl_test::random_or_get(), TimeMutation_test::random_or_get(), lib::time::test::anonymous_namespace{digxel-test.cpp}::randomFrac(), lib::test::randStr(), lib::test::randTime(), rani(), ThreadWrapperJoin_test::returnValue(), RandomSeq::rndLetter(), SingletonTestMock_test::run(), ItemWrapper_test::run(), SyncWaiting_test::run(), Random_test::simpleUsage(), LateBindInstance_test::theMember(), Random_test::verify_distributionVariants(), IterTools_test::verify_filterRepetitions(), HashGenerator_test::verify_Knuth_workaround(), LazyInit_test::verify_lazyInitialisation(), IterSource_test::verify_MultimapIters(), LazyInit_test::verify_TargetRelocation(), LazyInit_test::verify_triggerMechanism(), LazyInit_test::verify_trojanLambda(), ThreadWrapper_test::verifyConcurrentExecution(), and AllocationCluster_test::verifyInternals().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 142 of file random.hpp.
References defaultGen, RandomSequencer< GEN >::range(), and ranRange().
Referenced by Statistic_test::check_TimeSeriesLinearRegression(), and ranRange().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 148 of file random.hpp.
References defaultGen, RandomSequencer< GEN >::normal(), and ranNormal().
Referenced by ranNormal(), and Random_test::verify_distributionVariants().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 155 of file random.hpp.
References defaultGen, and RandomSequencer< GEN >::hash().
Referenced by Random_test::verify_distributionVariants().
Here is the call graph for this function:
Here is the caller graph for this function:| auto buildCappedSubSequence | ( | RandomSequencer< GEN > & | src | ) |
Definition at line 295 of file random.hpp.
Referenced by SyncClasslock_test::run().
Here is the caller graph for this function:| Result | ( | VAL && | ) | -> Result< VAL > |
deduction guide: allow perfect forwarding of a any result into the ctor call.
| Result | ( | FUN && | , |
| ARGS && | ... | ||
| ) | -> Result< std::invoke_result_t< FUN, ARGS... > > |
deduction guide: find out about result value to capture from a generic callable.
| fs::path findExePath | ( | ) |
retrieve the location of the executable
helper to figure out the installation directory, as given by the absolute path of the currently executing program
Definition at line 46 of file searchpath.cpp.
References GET_PATH_TO_EXECUTABLE.
Referenced by replaceMagicLinkerTokens(), and SearchPathSplitter_test::resolveEmbeddedOriginToken().
Here is the caller graph for this function:| string replaceMagicLinkerTokens | ( | string const & | src | ) |
replace $ORIGIN tokens in the given string
helper to replace all $ORIGIN prefixes in a given string by the directory holding the current executable
Definition at line 60 of file searchpath.cpp.
References findExePath().
Referenced by SearchPathSplitter::operator*().
Here is the call graph for this function:
Here is the caller graph for this function:| string resolveModulePath | ( | fs::path | moduleName, |
| string | searchPath = "" |
||
| ) |
helper to establish the location to search for loadable modules, configuration files, icons and further resources.
After first trying the moduleName directly, the given search path is walked using the SearchPathSplitter, until encountering an existing file with the given name.
| error::Config | when the resolution fails |
Definition at line 74 of file searchpath.cpp.
References cStr(), and resolveModulePath().
Referenced by resolveModulePath(), and UiStyle::setTheme().
Here is the call graph for this function:
Here is the caller graph for this function:| SeveralBuilder< I, E > makeSeveral | ( | ) |
Entrance Point: start building a lib::Several instance.
| I | Interface type to use for element access |
| E | (optional) standard element implementation type |
Definition at line 898 of file several-builder.hpp.
Referenced by SeveralBuilder_test::check_ElementStorage(), and SeveralBuilder_test::simpleUsage().
Here is the caller graph for this function:| SeveralBuilder< X > makeSeveral | ( | std::initializer_list< X > | ili | ) |
Definition at line 905 of file several-builder.hpp.
References SeveralBuilder< I, E, POL >::appendAll(), and SeveralBuilder< I, E, POL >::reserve().
Here is the call graph for this function:generate hash value based on the Literal's contents.
This function is intended to be picked up by ADL, and should be usable both with std::hash and <boost/functional/hash.hpp>. It is implemented similar as the boost::hash specialisation for std::string
Definition at line 84 of file symbol-impl.cpp.
References hash, and STRING_MAX_RELEVANT.
hash value for Symbols is directly based on the symbol table entry
Definition at line 100 of file symbol-impl.cpp.
References Literal::c().
Here is the call graph for this function:Definition at line 199 of file symbol.hpp.
References Literal::c().
Here is the call graph for this function:Definition at line 200 of file symbol.hpp.
References Literal::c().
Here is the call graph for this function:Definition at line 204 of file symbol.hpp.
Definition at line 205 of file symbol.hpp.
Definition at line 206 of file symbol.hpp.
References Literal::c().
Here is the call graph for this function:
|
inlineconstexpr |
Definition at line 207 of file symbol.hpp.
|
inlineconstexpr |
Definition at line 208 of file symbol.hpp.
|
inline |
string concatenation
Definition at line 214 of file symbol.hpp.
|
inline |
Definition at line 221 of file symbol.hpp.
| ThreadJoinable | ( | string const & | , |
| FUN && | , | ||
| ARGS && | ... | ||
| ) | -> ThreadJoinable< std::invoke_result_t< FUN, ARGS... > > |
deduction guide: find out about result value to capture from a generic callable.
|
inline |
Launch an autonomous self-managing thread (and forget about it).
The thread-object is allocated to the heap and will delete itself on termination.
| TAR | concrete type of the subclass to be started as autonomous detached thread. |
| launchBuilder | a flexible thread launch configuration to be used for starting; especially this contains the thread function and arguments to run in the thread. |
atExit and onOrphan defined in the launchBuilder will be overridden. atExit hook is the last piece of code executed within the thread; here it takes a pointer to the allocated instance of type TAR and deletes it from heap. Obviously this will invoke the destructor of the thread-wrapper eventually, at which point the onOrphan hook is invoked (since the thread is still running); at this point the C++ thread-handle is detached, so that invoking the dtor of std::thread will not terminate the system, rather just let the thread go away. The net result is an object of type TAR placed on the heap and kept there precisely as long as the thread runs. Definition at line 742 of file thread.hpp.
References ThreadWrapper::detach_thread_from_wrapper(), and launchDetached().
Referenced by ThreadWrapperAutonomous_test::demonstrateSimpleUsage(), launchDetached(), launchDetached(), launchDetached(), and launchDetached().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Launch an autonomous self-managing thread (and forget about it).
| TAR | concrete type of the subclass to be started as autonomous detached thread. |
| args | a valid argument list to call the ctor of thread::ThreadLifecycle |
Definition at line 765 of file thread.hpp.
References launchDetached().
Here is the call graph for this function:
|
inline |
Special variant bind a member function of the subclass into the autonomous thread.
Definition at line 775 of file thread.hpp.
References launchDetached().
Here is the call graph for this function:
|
inline |
Special variant without explicitly given thread-ID.
Definition at line 788 of file thread.hpp.
References util::joinDash(), and launchDetached().
Here is the call graph for this function:| Random defaultGen {eternalNucleus} |
a global default RandomSequencer for mundane purposes
Definition at line 70 of file random.cpp.
Referenced by LimitedRandomGenerate< max >::defaultSrc(), RandomConcurrent_test::investigate_concurrentAccess(), ParameterRange< CONF >::perform(), randomiseRandomness(), ranHash(), rani(), ranNormal(), ranRange(), TestFrame::reseed(), SyncClasslock_test::run(), and Test::seedRand().
| Random entropyGen {entropyNucleus} |
a global RandomSequencer seeded with real entropy
Definition at line 71 of file random.cpp.
Referenced by TempDir::establishNewDirectory(), TempDir::establishNewFile(), SuiteSeedNucleus::getSeed(), randomiseRandomness(), and steam::engine::test::anonymous_namespace{testframe.cpp}::stampHeader().
| const size_t STRING_MAX_RELEVANT = LUMIERA_IDSTRING_MAX_RELEVANT |
safety guard: maximum number of chars to process.
For comparisons, hash calculations etc., when dealing with raw char ptrs (typically literal values)
Definition at line 41 of file symbol-impl.cpp.
Referenced by SymbolHashtable_test::checkHashFunction(), hash_value(), and Literal::operator==().