|
class | Alge_ |
| Algebra. More...
|
|
class | Allocator |
| std::allocator compatible allocator More...
|
|
class | AllocatorObject |
| Objects that inherit from this class will use Alloc for new/delete ops. More...
|
|
class | App |
| Top-level application flow controller, provides entry point and run loop. More...
|
|
class | Atomic |
|
class | Atomic< T *, false > |
| Wrapper around pointer type to make all operations atomic and sequentially consistent. More...
|
|
class | Atomic< T, false > |
| Wrapper around a trivially copyable type to make load/store operations atomic and sequentially consistent. More...
|
|
class | Atomic< T, true > |
| Wrapper around integral type to make all operations atomic and sequentially consistent. More...
|
|
class | BackSub |
| Back substitute to solve a linear system. More...
|
|
class | Beta_ |
| Generate a random variate from a beta distribution . More...
|
|
class | BetaInc |
| Evaluate the incomplete beta function. More...
|
|
class | Binomial_ |
| Generate a random integer variate from a binomial distribution. More...
|
|
class | BinomialNeg_ |
| Generate a random integer variate from a negative binomial distribution. More...
|
|
class | Bisect |
| Find the root of a function by the bisection method. ie. Finds where function returns 0. More...
|
|
class | BisectN |
| Find the root of a set of functions by the bisection method. ie. Finds (x,y,...) where all functions return 0. More...
|
|
struct | BitOpCommon |
| Bit util common to any endian type. Use through class BitOp. More...
|
|
struct | BitOpEndian |
| Bit util specific to endian type. Use through class BitOp. More...
|
|
struct | BitOpEndian< static_cast< int >(Endian::big)> |
| Specialization for big endian. More...
|
|
struct | BitOpEndian< static_cast< int >(Endian::little)> |
| Specialization for little endian. More...
|
|
class | BitSet_ |
| A compact array of bits. Dynamic version of std::bitset. More...
|
|
class | BloomFilter |
| A space-efficient probabilistic data structure that is used to test set membership. Can be tuned to use less space at the expense of increased false positive probabilty. More...
|
|
class | Bootstrap |
| Monte Carlo (random-based) method to estimate the interval of confidence in a function's result, when that function operates on samples from a complex or unknown distribution. More...
|
|
class | Buffer |
| A contiguous region of referenced (not owned by object) memory. More...
|
|
struct | ByteArray |
| Fixed array of N bytes. More...
|
|
class | Bytes |
| String of bytes. More...
|
|
class | ByteStream |
| An I/O stream into which objects may be serialized and subsequently deserialized. More...
|
|
class | ByteStreamBuf |
| A stream I/O buffer of bytes, to be passed into ByteStream. More...
|
|
class | Chacha |
| ChaCha8, a cryptographically secure pseudo random number generator. More...
|
|
class | ChiSqr_ |
| Generate a random variate from a noncentral chi-square distribution. More...
|
|
class | ComObject |
| Component object. Object that consists of a collection of components. More...
|
|
class | Component |
| Base class for components. Components can only be attached to one ComObject at a time. More...
|
|
class | ComRegistry |
| Holds global list of all component types. More...
|
|
class | Condition |
| Method to synchronize threads. Condition variables eliminate the need for repeated polling to check the value of some data. More...
|
|
class | ConditionAny |
| Condition that can be used with any kind of lock. Slightly slower than the default Condition class. More...
|
|
class | ConditionLock |
| Lock that is bound to a single condition. This is the common usage case of condition variables. More...
|
|
struct | DefaultAllocator |
| Returns T::Allocator<T> if available, otherwise std::allocator<T> More...
|
|
struct | DefaultAllocator< T, typename mt::True< typename T::template Allocator< T > >::type > |
|
struct | DefaultAllocator< T[], std::true_type > |
|
class | DepGraph |
| Dependency graph. Collects nodes and builds a searchable directed graph. More...
|
|
class | DepNode |
| Dependency node for insertion into graph. More...
|
|
class | DepSched |
| Scheduler that serializes and parallelizes task execution given a dependency graph of tasks and a pool of threads. More...
|
|
class | DepTask |
| Base class of DepTask_ , can be added to scheduler. Instances must be created through class DepTask_ . More...
|
|
class | DepTask_ |
| Holds a functor and dependency information, enqueue in a scheduler to run the task. More...
|
|
class | deref_wrap |
| Wraps a pointer so that it behaves similar to a reference. More...
|
|
class | Discrete_ |
| Generate random integer variate between min and max inclusive with uniform (flat) distribution. More...
|
|
class | DiscreteGen_ |
| Generate a random integer variate from a generalized discrete distribution. More...
|
|
class | Double_ |
| Defines 64-bit floating point operations and constants. More...
|
|
class | Duration |
| Duration represented by repetitions of a period. The period must be a ratio. More...
|
|
class | Eigen |
| Eigendecomposition. Decomposes any square (n x n) symmetric matrix into eigenvalues and eigenvectors. More...
|
|
class | EnumElem |
| Base class of all generated enum classes. A single element in the enumeration. See Enumeration Classes. More...
|
|
struct | EnumError |
|
class | EnumInfo_ |
| Run-time info about an enum class. Contains a list of elements and maps for element lookups. See Enumeration Classes for more info and examples. More...
|
|
class | Exception |
| Base exception class. Exceptions inherited from this class provide debug info and can be thrown polymorphically (unlike standard c++ exceptions). More...
|
|
struct | finalize |
| Functor to delete a pointer. More...
|
|
struct | finalize< T[], std::allocator< T > > |
| Specialization for array. More...
|
|
struct | finalize< void, std::allocator< void > > |
| Specialization for void. More...
|
|
class | Float_ |
| Defines floating point operations and constants. More...
|
|
class | Future |
| Unique future, guarantees sole access to a future function result. More...
|
|
class | FutureBase |
| Base class for Future types. More...
|
|
class | FutureCommon |
| Mixin for common future methods. More...
|
|
class | Gamma_ |
| Generate a random variate from a gamma distribution . More...
|
|
class | GammaFunc_ |
| Class to evaluate Gamma and related functions. More...
|
|
class | Gaussian_ |
| Generate a normally (Gaussian) distributed random variate. More...
|
|
class | HyperGeo_ |
| Generate a random integer variate from a hypergeometric distribution. More...
|
|
class | Id |
| Holds a name string and its hashed value for fast comparison ops. See String Identifier. More...
|
|
class | IdLiteral |
| Id created from a string literal at compile-time. More...
|
|
class | Interp_ |
| Interpolation math. More...
|
|
class | IntIter |
| Incremental integer iterator (step size = 1). See range(int, int) to create. More...
|
|
class | IntStepIter |
| Integer iterator with step size. See range(int, int, int) to create. More...
|
|
class | lazy |
| Wraps a value so that it is calculated only when needed. A lock synchronizes access. More...
|
|
class | LinearLeastSqr |
| Linear least squares solver. More...
|
|
class | Listener |
| Holds a slot that can receive signals. More...
|
|
class | ListenerList |
| Collection of listeners. More...
|
|
class | ListenerQueue |
| Listener that holds queued slot for delayed processing of signals. More...
|
|
class | Log |
| Logger. More...
|
|
class | Manip |
| Base class to hold iostream manipulator state. Inherit from this class and call Subclass::inst(ios) to attach an instance of Subclass to an iostream. More...
|
|
struct | ManipFunc |
| Helper to create a manipulator that takes arguments. More...
|
|
class | Matrix |
| (m x n)-dimensional matrix More...
|
|
class | Matrix< 1, 1, Real, Options > |
| Matrix 1x1 vector. More...
|
|
class | Matrix< 1, Dim, Real, Options, Alloc_ > |
| Matrix row vector. More...
|
|
class | Matrix< 4, 4, Real, Options > |
| 4x4 homogeneous matrix class. Supports both affine and projective operations. More...
|
|
class | Matrix< Dim, 1, Real, Options, Alloc_ > |
| Matrix column vector. More...
|
|
class | MatrixBase |
| Matrix base class. More...
|
|
class | MemPool |
| Memory pool. More...
|
|
class | MemPoolAllocator |
| MemPool allocator. More...
|
|
class | Minimize |
| Find a local minimum of a 1-dimensional function using "Brent's method" – bisection and inverse quadratic interpolation. More...
|
|
class | MinimizeN |
| Find a local minimum of an n-dimensional function using "Powell's conjugate gradient descent method". More...
|
|
struct | MonoClock |
| System-wide monotonic clock. High-resolution and steady-rate time since application start, can't go backwards. More...
|
|
class | MtMapCommon |
| Common functions between map elem and the map tail specialization. Use through class MtMapElem. More...
|
|
class | MtMapElem |
| Map element in recursive list. More...
|
|
class | MtMapIter |
| Bidirectional iterator over map key/value pairs. More...
|
|
struct | MtPair |
| Key/value pair. A pair can be constructed with the syntax: (key() = value) More...
|
|
class | Mutex |
| A thread lock where the lock is acquired by suspending thread execution until it becomes available. More...
|
|
class | NameId |
| Holds both a name string and its hashed value, and unlike Id the name is never compiled out. More...
|
|
class | Numeral |
| Numeric type information, use numeral() to get instance safely from a static context. More...
|
|
class | NumeralFloat |
| Numeric type info for floating point types. More...
|
|
class | NumeralInt |
| Numeric type info for integer types. More...
|
|
class | Object |
| Base class for objects. More...
|
|
class | optional |
| Enables any type to be optional so it can exist in an uninitialized null state. More...
|
|
class | optional< T & > |
| Specialization for references. More...
|
|
struct | optnull_t |
| Null optional type. More...
|
|
struct | overload_ |
|
struct | overload_< Func, Funcs... > |
| An overloaded visitor functor. More...
|
|
struct | overload_<> |
|
class | PackagedTask |
| A container that wraps a function so that its result is stored in a future when invoked. More...
|
|
class | PackagedTask< R(Param...)> |
|
class | PeriodicSched |
| Scheduler that executes tasks periodically or after a delay given a pool of threads. More...
|
|
class | PeriodicTask |
| Base class of PeriodicTask_ , returned by scheduler. More...
|
|
class | PeriodicTask_ |
| Holds a functor and period information, returned by scheduler. More...
|
|
class | Permute_ |
| Generate all permutations of a list. A functor can be specified for fast culling of entire subtrees of undesired permutations. More...
|
|
class | Poisson_ |
| Generate a random integer variate from a poisson distribution. More...
|
|
class | Polynomial |
| Polynomial algorithms. More...
|
|
class | Promise |
| Container to hold a delayed function result. More...
|
|
class | Property |
| Generic property. More...
|
|
class | Property< vector< T > > |
| Generic vector property. More...
|
|
class | PropertyBase |
| Base class for all properties. More...
|
|
struct | PropertyError |
|
class | PropertyObject |
| Object that contains properties. More...
|
|
class | Qrd |
| QR Decomposition. Can be used to solve least squares problems. More...
|
|
class | Quad_ |
| Defines 128-bit floating point operations and constants. More...
|
|
class | Quat_ |
| Quaternion rotation class. Represents a counter-clockwise rotation of an angle about its axis. More...
|
|
class | Random_ |
| Random-related methods. More...
|
|
class | RandomDist |
| Base class for all random distributions. More...
|
|
class | RandomGen |
| Random number generator interface. More...
|
|
class | Range_ |
| Iterator range. See range(Iter1&&, Iter2&&) to create. More...
|
|
struct | Ratio |
| Class to hold compile-time finite rational numbers, ie. the fraction num / den. More...
|
|
class | RealBase |
| Base class for real number operations. More...
|
|
class | RealIter |
| Real number iterator. See range(Real, Real, Real) to create. More...
|
|
class | recursive_wrap |
| Allows for recursive type definitions, eg. class Object : vector<recursive_wrap<Object>> . More...
|
|
class | RingIter |
| Ring iterator. See ringRange() to create. More...
|
|
class | ScopeGuard_ |
| Run a function at scope exit. See ScopeGuard() to create. More...
|
|
class | SharedFuture |
| Shared future, allows multiple access to a future function result. More...
|
|
class | SharedLock |
| A scoped lock that references a shared mutex. Does a shared read lock on construction and unlocks on destruction. More...
|
|
class | SharedMutex |
| A thread lock for shared data where there may be many readers and one writer. More...
|
|
class | SharedObj |
| Reference-counted object for intrusive shared pointers. More...
|
|
class | SharedPtr |
| Combined intrusive/non-intrusive smart pointer. Can reference and share any object automatically. More...
|
|
struct | Signal |
| Multicast sender. More...
|
|
class | SimplexNoise |
| Generate smooth noise over space. Implementation of Perlin's "Simplex Noise" generator. More...
|
|
class | SimplexNoiseCommon |
| Methods common to all simplex noise dimensions. More...
|
|
class | SinTable |
| Speeds up all trig functions at the cost of precision. Precision is roughly 1 / size. More...
|
|
class | SlotBase |
| Multicast receiver. More...
|
|
class | SmallAllocator |
| Global allocator for small memory blocks. To provide a custom pool define SmallAllocator_createSingleton_ and implement SmallAllocator_createSingleton(). More...
|
|
class | SpinLock |
| A thread lock where the lock is acquired through a busy wait loop. More...
|
|
class | String |
| Unicode UTF-16 string class, wrapper around std::u16string. More...
|
|
class | StudentT_ |
| Generate a random variate from a Student's t-distribution. More...
|
|
class | Svd |
| Singular Value Decomposition. Can be used to calculate the pseudo-inverse of any matrix or solve least squares problems. More...
|
|
struct | SystemClock |
| System-wide real-time clock. Low-resolution time since Unix Epoch, can possibly go backwards if changed by OS. More...
|
|
class | Thread |
| Thread class. More...
|
|
class | TimedMutex |
| A mutex that has a timed try-lock. More...
|
|
class | TimePoint |
| TimePoint represented by a duration since a clock's epoch time. More...
|
|
class | TransferLock |
| Scoped transfer of mutex ownership between two locks. More...
|
|
class | Transform_ |
| A 3D linear transform from TRS components (translation, rotation, and scale/skew) More...
|
|
class | TreeClone |
| Clone and track changes to an entire tree. More...
|
|
class | TreeNode |
| Unrooted acyclic tree. More...
|
|
class | Trig_ |
| Trigonometry. More...
|
|
class | TupleIter |
| Wrapper around an iterator with tuple value type. When dereferenced returns I 'th element. More...
|
|
class | TupleIter< Iter, I, std::bidirectional_iterator_tag > |
|
class | TupleIter< Iter, I, std::forward_iterator_tag > |
|
class | Uniform_ |
| Generate a random variate between min and max non-inclusive with uniform (flat) distribution. More...
|
|
class | UniqueLock |
| A scoped lock that references any lockable. Locks on construction and unlocks on destruction. More...
|
|
class | UniquePtr |
| Pointer to a unique, non-shared, object. Finalizer is run upon destruction (deletes object by default) if pointer is not null. More...
|
|
class | variant |
| Multi-typed value. A variant is a value of any type from a fixed set of bounded types, the active bounded type may be changed dynamically. More...
|
|
struct | VariantError |
|
class | Vec |
| N-dimensional vector. More...
|
|
class | Vec< 1, Real, Options > |
| 1D vector More...
|
|
class | Vec< 2, Real, Options > |
| 2D vector More...
|
|
class | Vec< 3, Real, Options > |
| 3D vector More...
|
|
class | Vec< 4, Real, Options > |
| 4D vector More...
|
|
class | VecBase |
| Vector base class. More...
|
|
class | VecSwizCon |
| Vector for const swizzle operators. More...
|
|
class | VecSwizCon< 2, Real, Options > |
| 2D const swizzle vector More...
|
|
class | VecSwizCon< 3, Real, Options > |
| 3D const swizzle vector More...
|
|
class | VecSwizCon< 4, Real, Options > |
| 4D const swizzle vector More...
|
|
class | VecSwizConBase |
|
class | VecSwizRef |
| Vector reference holder for mutable swizzle operators. More...
|
|
class | VecSwizRef< 2, Real, Options > |
| 2D mutable swizzle vector More...
|
|
class | VecSwizRef< 3, Real, Options > |
| 3D mutable swizzle vector More...
|
|
class | VecSwizRef< 4, Real, Options > |
| 4D mutable swizzle vector More...
|
|
class | VecSwizRefBase |
|
class | Vegas |
| Monte Carlo (random-based) method to approximate the integral of a function over any number of dimensions. More...
|
|
class | WeakPtr |
| Point to a shared object without holding a reference. The object is accessible through a lock, which prevents unexpected destruction. More...
|
|
class | Weibull_ |
| Generate a random integer variate from a weibull distribution. More...
|
|
|
template<class T > |
constexpr Numeral< T > | numeral () |
| Get numeric type info safely from a static context. More...
|
|
template<class T > |
constexpr Numeral< T > | numeral (const T &) |
| Get numeric type info of deduced type. More...
|
|
template<class T > |
T * | alloc (szt count=1) |
| Allocate memory for count number of T objects. Objects are not constructed. More...
|
|
template<class T > |
void | free (T *&p) |
| Deallocate memory and set pointer to null. Object is not destroyed. More...
|
|
template<class T > |
void | free (T *const &p) |
|
template<class T > |
T * | alignFloor (T *p, szt bytes) |
| Align a pointer to the previous byte boundary bytes . Does nothing if p is already on boundary. Alignment must be a power of two. More...
|
|
template<class T > |
T * | alignCeil (T *p, szt bytes) |
| Align a pointer to the next byte boundary bytes . Does nothing if p is already on boundary. Alignment must be a power of two. More...
|
|
template<class T , class Alloc > |
T * | allocAligned (szt count, szt align_, Alloc &&a) |
| Allocate memory with alignment. Alignment must be a power of two. Allocator element type must be int8. More...
|
|
template<class T > |
T * | allocAligned (szt count, szt align) |
| Allocate memory with alignment using default allocator. More...
|
|
template<class T , class Alloc > |
void | freeAligned (T *p, Alloc &&a) |
| Deallocate aligned memory. Allocator element type must be int8. More...
|
|
template<class T > |
void | freeAligned (T *p) |
| Deallocate aligned memory using default allocator. More...
|
|
template<class T > |
void | delete_ (T *&p) |
| Destruct object, free memory and set pointer to null. More...
|
|
template<class T > |
void | delete_ (T *const &p) |
|
template<class T , class Alloc > |
void | delete_ (T *&p, Alloc &&a) |
| Destruct object, free memory using allocator and set pointer to null. More...
|
|
template<class T , class Alloc > |
void | delete_ (T *const &p, Alloc &&a) |
|
template<class T > |
void | deleteArray (T *&p) |
| Destruct all array objects, free memory and set pointer to null. More...
|
|
template<class T > |
void | deleteArray (T *const &p) |
|
MemPool * | SmallAllocator_createSingleton () |
| Default implementation. More...
|
|
template<class... Pairs> |
auto | mtmap (Pairs &&...pairs) -> decltype(priv::mtmap_(priv::PairSeqGen< Pairs... >(), forward< Pairs >(pairs)...)) |
| Construct a map from (key() = value) pairs. More...
|
|
template<class Iter1 , class Iter2 , class Func > |
auto | for_each_mtmap (Iter1 itBegin, Iter2 itEnd, Func &&func) -> typename std::enable_if<!std::is_same< typename Iter1::Pair::Key, typename Iter2::Pair::Key >::value >::type |
| Iterate over map calling functor (visitor) for each key/value pair. More...
|
|
template<class Iter > |
auto | seqToIter (Iter &&seq) -> typename std::enable_if< mt::isIterator< Iter >::value, Iter && >::type |
| Convert a sequence to a forward iterator. Overload for iterator type. Returns the iterator itself. More...
|
|
template<class Range > |
auto | seqToIter (Range &&seq) -> typename std::enable_if< mt::isRange< Range >::value, mt_iterOf(seq)>::type |
| Convert a sequence to a forward iterator. Overload for range type. Returns the range's begin iterator. More...
|
|
template<class Iter1 , class Iter2 > |
std::enable_if< mt::isIterator< Iter1 >::value, Range_< Iter1, Iter2 > >::type | range (Iter1 &&first, Iter2 &&last) |
| Range from iterators [first, last) More...
|
|
template<class T1 , class T2 > |
Range_< T1, T2 > | range (pair< T1, T2 > &p) |
| Range from iterator pair [first, second) More...
|
|
template<class T1 , class T2 > |
Range_< T1, T2 > | range (const pair< T1, T2 > &p) |
|
template<class T1 , class T2 > |
Range_< T1, T2 > | range (tuple< T1, T2 > &t) |
| Range from iterator tuple [0, 1) More...
|
|
template<class T1 , class T2 > |
Range_< T1, T2 > | range (const tuple< T1, T2 > &t) |
|
template<class Range > |
auto | reversed (Range &&range) -> Range_< std::reverse_iterator< mt_iterOf(range)>, std::reverse_iterator< mt_iter_endOf(range)>> |
| Reverse a range. Begin/End iterators must be bidirectional. More...
|
|
OutSeq && | map (Range &&, Seqs &&..., OutSeq &&, Func &&) |
| Transform a series of sequences into an output. More...
|
|
Accum | reduce (Range &&, Seqs &&..., Accum &&initVal, Func &&) |
| Accumulate a series of sequences into an output. More...
|
|
Iter | find (Range &&, Seqs &&..., Func &&pred) |
| Find an element in a series of sequences. More...
|
|
Range_< FilterIter, FilterIter > | filter (Range &&, Seqs &&..., Func &&pred) |
| Filter a range by ignoring undesired elements. More...
|
|
template<class Range > |
szt | countOf (Range &&range) |
| Count number of elements in range. More...
|
|
template<class Range > |
void | deleteRange (Range &&range) |
| Delete all elements in range. More...
|
|
template<class Range , class Alloc > |
void | deleteRange (Range &&range, Alloc &&a) |
| Delete all elements in range using allocator. More...
|
|
template<class Int , class Int2 , class Int_ = typename std::common_type<Int,Int2>::type> |
std::enable_if< std::is_integral< Int_ >::value, Range_< IntIter< Int_ >, IntIter< Int_ > > >::type | range (Int begin, Int2 end) |
| Create a range that increments through the integral range [begin,end) More...
|
|
template<class Int > |
std::enable_if< std::is_integral< Int >::value, Range_< IntIter< Int >, IntIter< Int > > >::type | range (Int end) |
| Create a range that increments through the integral range [0,end) More...
|
|
template<class Int , class Int2 , class Int3 , class Int_ = typename std::common_type<Int,Int2,Int3>::type> |
std::enable_if< std::is_integral< Int_ >::value, Range_< IntStepIter< Int_ >, IntStepIter< Int_ > > >::type | range (Int begin, Int2 end, Int3 step) |
| Create a range that steps through the integral range [begin,end) More...
|
|
template<class Real , class Real2 , class Real3 , class Real_ = typename std::common_type<Real,Real2,Real3>::type> |
std::enable_if< std::is_floating_point< Real_ >::value, Range_< RealIter< Real_ >, RealIter< Real_ > > >::type | range (Real begin, Real2 end, Real3 step=1) |
| Create a range that steps through the real number range [begin,end) More...
|
|
template<class Range , class Iter > |
auto | ringRange (Range &&range, const Iter &cur) -> Range_< RingIter< Range, Iter >, RingIter< Range, Iter >> |
| Create an iterator adapter range that does one full cyclic loop starting at cur through the range. More...
|
|
template<class StdContainer > |
int | size (const StdContainer &cont) |
| Safely get the size of a std container as a signed integer. More...
|
|
template<class Range > |
auto | keys (Range &&range) -> Range_< TupleIter< mt_iterOf(range), 0 >, TupleIter< mt_iterOf(range), 0 >> |
| Create a range over the keys of a map or map iterator range. More...
|
|
template<class Range > |
auto | values (Range &&range) -> Range_< TupleIter< mt_iterOf(range), 1 >, TupleIter< mt_iterOf(range), 1 >> |
| Create a range over the values of a map or map iterator range. More...
|
|
template<class Func , class... Args> |
auto | bind_fill (Func &&f, Args &&...args) -> decltype( priv::bind_fill< mt::funcTraits< typename mt::removeRef< Func >::type >::arity >()(forward< Func >(f), forward< Args >(args)...)) |
| Version of bind that automatically fills in placeholders for unspecified arguments. More...
|
|
template<class Func , class... Args> |
auto | manipFunc (Func &&f, Args &&...args) |
| Helper to create a manipulator that takes arguments. eg. A manip named 'foo': auto foo(int val) { return manipFunc([=](ios_base& ios) { FooManip::inst(ios).val = val; }); } More...
|
|
template<class... Funcs> |
overload_< Funcs... > | overload (Funcs &&...fs) |
| Create an overloaded visitor functor. More...
|
|
ostream & | operator<< (ostream &os, const Bytes &val) |
|
istream & | operator>> (istream &is, Bytes &val) |
|
constexpr byte | operator""_b (unsigned long long int i) |
| Construct byte from integer literal (eg. 128_b) More...
|
|
constexpr byte | operator""_b (char c) |
| Construct byte from character literal (eg. 'x'_b) More...
|
|
Bytes | operator""_b (const char *str, szt len) |
| Construct bytes from string literal (eg. "something"_b) More...
|
|
ostream & | operator<< (ostream &os, ByteBufConst val) |
| Write byte buffer to string stream using current encoding. More...
|
|
template<class Int > |
std::enable_if< std::is_integral< Int >::value, Bytes >::type | toBytes (Int val, Endian order=Endian::big) |
| Convert integral value to bytes. More...
|
|
template<class Int > |
std::enable_if< std::is_integral< Int >::value, Int >::type | fromBytes (const Bytes &bs, Endian order=Endian::big) |
| Convert bytes to integral value. More...
|
|
ByteStream & | operator<< (ByteStream &os, const bool val) |
| Bool to bytes. More...
|
|
ByteStream & | operator<< (ByteStream &os, const byte val) |
| Byte to bytes. More...
|
|
ByteStream & | operator<< (ByteStream &os, const char val) |
| UTF-8 char to bytes. More...
|
|
template<class T , typename std::enable_if< std::is_integral< T >::value||std::is_floating_point< T >::value, int >::type = 0> |
ByteStream & | operator<< (ByteStream &os, const T val) |
| Multi-byte number to big-endian bytes. More...
|
|
ByteStream & | operator<< (ByteStream &os, Char val) |
| Char to bytes. More...
|
|
ByteStream & | operator>> (ByteStream &is, bool &val) |
| Bool from bytes. More...
|
|
ByteStream & | operator>> (ByteStream &is, byte &val) |
| Byte from bytes. More...
|
|
ByteStream & | operator>> (ByteStream &is, char &val) |
| UTF-8 char from bytes. More...
|
|
template<class T , typename std::enable_if< std::is_integral< T >::value||std::is_floating_point< T >::value, int >::type = 0> |
ByteStream & | operator>> (ByteStream &is, T &val) |
| Multi-byte number from big-endian bytes. More...
|
|
ByteStream & | operator>> (ByteStream &is, Char &val) |
| Char from bytes. More...
|
|
template<class T1 , class T2 > |
ByteStream & | operator<< (ByteStream &os, const pair< T1, T2 > &p) |
| Pair to bytes. More...
|
|
template<class Tuple > |
std::enable_if< mt::isTuple< Tuple >::value, ByteStream & >::type | operator<< (ByteStream &os, Tuple &&t) |
| Tuple to bytes. More...
|
|
template<class T , szt N> |
ByteStream & | operator<< (ByteStream &os, const array< T, N > &a) |
| Array to bytes. More...
|
|
template<class T , szt N, typename std::enable_if<!std::is_same< T, char >::value &&!std::is_same< T, Char >::value, int >::type = 0> |
ByteStream & | operator<< (ByteStream &os, const T(&a)[N]) |
| C-array to bytes. C-arrays of chars are interpreted as C-strings, so for proper char arrays use std::array instead. More...
|
|
template<class T , class Alloc > |
ByteStream & | operator<< (ByteStream &os, const vector< T, Alloc > &vec) |
| Vector to bytes. More...
|
|
ByteStream & | operator<< (ByteStream &os, const String &str) |
| String to bytes. More...
|
|
ByteStream & | operator<< (ByteStream &os, const Char *str) |
| C-string to bytes. More...
|
|
ByteStream & | operator<< (ByteStream &os, const std::string &str) |
| UTF-8 string to bytes. More...
|
|
ByteStream & | operator<< (ByteStream &os, const char *str) |
| UTF-8 C-string to bytes. More...
|
|
ByteStream & | operator<< (ByteStream &os, const Bytes &bs) |
| Bytes to bytes. More...
|
|
ByteStream & | operator<< (ByteStream &os, ByteBufConst bs) |
| Byte buffer to bytes. More...
|
|
template<class T , class Compare , class Alloc > |
ByteStream & | operator<< (ByteStream &os, const set< T, Compare, Alloc > &set) |
| Set to bytes. More...
|
|
template<class T , class Compare , class Alloc > |
ByteStream & | operator<< (ByteStream &os, const multiset< T, Compare, Alloc > &set) |
| Multi-Set to bytes. More...
|
|
template<class Key , class Hash , class KeyEqual , class Alloc > |
ByteStream & | operator<< (ByteStream &os, const unordered_set< Key, Hash, KeyEqual, Alloc > &set) |
| Unordered Set to bytes. More...
|
|
template<class Key , class Hash , class KeyEqual , class Alloc > |
ByteStream & | operator<< (ByteStream &os, const unordered_multiset< Key, Hash, KeyEqual, Alloc > &set) |
| Unordered Multi-Set to bytes. More...
|
|
template<class Key , class T , class Compare , class Alloc > |
ByteStream & | operator<< (ByteStream &os, const std::map< Key, T, Compare, Alloc > &map) |
| Map to bytes. More...
|
|
template<class Key , class T , class Compare , class Alloc > |
ByteStream & | operator<< (ByteStream &os, const multimap< Key, T, Compare, Alloc > &map) |
| Multi-Map to bytes. More...
|
|
template<class Key , class T , class Hash , class KeyEqual , class Alloc > |
ByteStream & | operator<< (ByteStream &os, const unordered_map< Key, T, Hash, KeyEqual, Alloc > &map) |
| Unordered Map to bytes. More...
|
|
template<class Key , class T , class Hash , class KeyEqual , class Alloc > |
ByteStream & | operator<< (ByteStream &os, const unordered_multimap< Key, T, Hash, KeyEqual, Alloc > &map) |
| Unordered Multi-Map to bytes. More...
|
|
template<class T1 , class T2 > |
ByteStream & | operator>> (ByteStream &is, pair< T1, T2 > &p) |
| Pair from bytes. More...
|
|
template<class Tuple > |
std::enable_if< mt::isTuple< Tuple >::value, ByteStream & >::type | operator>> (ByteStream &is, Tuple &t) |
| Tuple from bytes. More...
|
|
template<class T , szt N> |
ByteStream & | operator>> (ByteStream &is, array< T, N > &a) |
| Array from bytes. More...
|
|
template<class T , szt N, typename std::enable_if<!std::is_same< T, char >::value &&!std::is_same< T, Char >::value, int >::type = 0> |
ByteStream & | operator>> (ByteStream &is, T(&a)[N]) |
| C-array from bytes. C-arrays of chars are interpreted as C-strings, so for proper char arrays use std::array instead. More...
|
|
template<class T , class Alloc > |
ByteStream & | operator>> (ByteStream &is, vector< T, Alloc > &vec) |
| Vector from bytes. More...
|
|
ByteStream & | operator>> (ByteStream &is, String &str) |
| String from bytes. More...
|
|
ByteStream & | operator>> (ByteStream &is, Char *str) |
| C-string from bytes. Pointer must point to allocated memory that is large enough to hold string including null character. More...
|
|
ByteStream & | operator>> (ByteStream &is, std::string &str) |
| UTF-8 string from bytes. More...
|
|
ByteStream & | operator>> (ByteStream &is, char *str) |
| UTF-8 C-string from bytes. Pointer must point to allocated memory that is large enough to hold string including null character. More...
|
|
ByteStream & | operator>> (ByteStream &is, Bytes &bs) |
| Bytes from bytes. More...
|
|
template<class T , typename std::enable_if< std::is_same< T, byte * >::value, int >::type = 0> |
ByteStream & | operator>> (ByteStream &is, T bs) |
| Byte C-string from bytes, unimplemented, use ByteStream::read(bs, n) instead. More...
|
|
template<class T , class Compare , class Alloc > |
ByteStream & | operator>> (ByteStream &is, set< T, Compare, Alloc > &set) |
| Set from bytes. More...
|
|
template<class T , class Compare , class Alloc > |
ByteStream & | operator>> (ByteStream &is, multiset< T, Compare, Alloc > &set) |
| Multi-Set from bytes. More...
|
|
template<class Key , class Hash , class KeyEqual , class Alloc > |
ByteStream & | operator>> (ByteStream &is, unordered_set< Key, Hash, KeyEqual, Alloc > &set) |
| Unordered Set from bytes. More...
|
|
template<class Key , class Hash , class KeyEqual , class Alloc > |
ByteStream & | operator>> (ByteStream &is, unordered_multiset< Key, Hash, KeyEqual, Alloc > &set) |
| Unordered Multi-Set from bytes. More...
|
|
template<class Key , class T , class Compare , class Alloc > |
ByteStream & | operator>> (ByteStream &is, std::map< Key, T, Compare, Alloc > &map) |
| Map from bytes. More...
|
|
template<class Key , class T , class Compare , class Alloc > |
ByteStream & | operator>> (ByteStream &is, multimap< Key, T, Compare, Alloc > &map) |
| Multi-Map from bytes. More...
|
|
template<class Key , class T , class Hash , class KeyEqual , class Alloc > |
ByteStream & | operator>> (ByteStream &is, unordered_map< Key, T, Hash, KeyEqual, Alloc > &map) |
| Unordered Map from bytes. More...
|
|
template<class Key , class T , class Hash , class KeyEqual , class Alloc > |
ByteStream & | operator>> (ByteStream &is, unordered_multimap< Key, T, Hash, KeyEqual, Alloc > &map) |
| Unordered Multi-Map from bytes. More...
|
|
ByteStream & | operator<< (ByteStream &os, const Id &val) |
| Id to bytes. More...
|
|
ByteStream & | operator>> (ByteStream &is, Id &val) |
| Id from bytes. More...
|
|
ByteStream & | operator<< (ByteStream &os, const IdLiteral &val) |
| Literal id to bytes. More...
|
|
ByteStream & | operator<< (ByteStream &os, const NameId &val) |
| Named id to bytes. More...
|
|
ByteStream & | operator>> (ByteStream &is, NameId &val) |
| Named id from bytes. More...
|
|
template<class T , class Fin > |
ByteStream & | operator<< (ByteStream &os, const UniquePtr< T, Fin > &p) |
| UniquePtr to bytes, outputs object pointed to (and exists flag), or a null flag if no object. More...
|
|
template<class T , class Fin > |
ByteStream & | operator>> (ByteStream &is, UniquePtr< T, Fin > &p) |
| UniquePtr from bytes, object is allocated if necessary using current bytestream allocator. More...
|
|
template<class T > |
ByteStream & | operator<< (ByteStream &os, const SharedPtr< T > &p) |
| SharedPtr to bytes, outputs object pointed to (and exists flag), or index into current shared table if already output (index=flag-2), or a null flag if no object. More...
|
|
template<class T > |
ByteStream & | operator>> (ByteStream &is, SharedPtr< T > &p) |
| SharedPtr from bytes, object is allocated if necessary using current bytestream allocator. More...
|
|
template<class Rep , class Period > |
ByteStream & | operator<< (ByteStream &os, const Duration< Rep, Period > &d) |
| Duration to bytes. More...
|
|
template<class Rep , class Period > |
ByteStream & | operator>> (ByteStream &is, Duration< Rep, Period > &d) |
| Duration from bytes. More...
|
|
constexpr IdLiteral | operator""_id (const char *str, szt len) |
| Create an id from a string literal at compile-time. More...
|
|
ostringstream | sout () |
| Shorthand to create ostringstream. More...
|
|
ostream & | endl (ostream &os) |
| End line and apply any indentation to the next line. More...
|
|
template<class Char , class Comp > |
static int | compare_ (const Char *str, szt n, szt pos, szt len, const Char *str2, szt n2, szt pos2, szt len2, Comp &&comp) |
|
template<class T , class R = typename std::decay<T>::type> |
Future< R > | FutureCreate (T &&val) |
| Create a future that is immediately ready with the value. More...
|
|
Future< void > | FutureCreate () |
|
template<class T , class R = typename std::decay<T>::type> |
SharedFuture< R > | SharedFutureCreate (T &&val) |
| Create a shared future that is immediately ready with the value. More...
|
|
SharedFuture< void > | SharedFutureCreate () |
|
|
String | operator+ (const String &lhs, const String &rhs) |
|
String | operator+ (const String &lhs, const std::string &rhs) |
|
String | operator+ (const String &lhs, const Char *rhs) |
|
String | operator+ (const String &lhs, const char *rhs) |
|
String | operator+ (const std::string &lhs, const String &rhs) |
|
String | operator+ (const Char *lhs, const String &rhs) |
|
String | operator+ (const char *lhs, const String &rhs) |
|
bool | operator== (const String &lhs, const String &rhs) |
|
bool | operator== (const String &lhs, const Char *rhs) |
|
bool | operator== (const Char *lhs, const String &rhs) |
|
bool | operator!= (const String &lhs, const String &rhs) |
|
bool | operator!= (const String &lhs, const Char *rhs) |
|
bool | operator!= (const Char *lhs, const String &rhs) |
|
bool | operator< (const String &lhs, const String &rhs) |
|
bool | operator< (const String &lhs, const Char *rhs) |
|
bool | operator< (const Char *lhs, const String &rhs) |
|
bool | operator> (const String &lhs, const String &rhs) |
|
bool | operator> (const String &lhs, const Char *rhs) |
|
bool | operator> (const Char *lhs, const String &rhs) |
|
bool | operator<= (const String &lhs, const String &rhs) |
|
bool | operator<= (const String &lhs, const Char *rhs) |
|
bool | operator<= (const Char *lhs, const String &rhs) |
|
bool | operator>= (const String &lhs, const String &rhs) |
|
bool | operator>= (const String &lhs, const Char *rhs) |
|
bool | operator>= (const Char *lhs, const String &rhs) |
|
const Char * | c_str (const Char *str) |
| Ensures that str points to a valid C-string. If str is null then the result is an empty C-string (ie. ""). More...
|
|
const char * | c_str (const char *str) |
|