CatapultServer
v0.5.0.1 (Elephant)
|
Namespaces | |
detail | |
Classes | |
class | BaseSet |
struct | BaseSetCommitPolicy |
Default policy for committing changes to a base set. More... | |
class | BaseSetDelta |
class | BaseSetDeltaIterationView |
class | BaseSetIterationView |
A view that provides iteration support to a base set. More... | |
class | ConditionalContainer |
A conditional container that delegates to either a storage or a memory backed container. More... | |
struct | DeltaElements |
Slim wrapper around changed elements. More... | |
class | DeltaElementsMixin |
Mixin that wraps BaseSetDelta and provides a facade on top of BaseSetDelta::deltas(). More... | |
struct | FindTraitsT |
Traits for customizing the behavior of find depending on element type. More... | |
struct | FindTraitsT< T, true > |
struct | ImmutableTypeTag |
Tag that indicates a type is immutable. More... | |
struct | ImmutableTypeTraits |
Traits used for describing an immutable type. More... | |
struct | MapKeyTraits |
Key-related traits for stl map types. More... | |
struct | MapStorageTraits |
Base set compatible traits for stl map types. More... | |
struct | MutableTypeTag |
Tag that indicates a type is mutable. More... | |
struct | MutableTypeTraits |
Traits used for describing a mutable type. More... | |
class | OrderedSet |
A base set with ordered keys. More... | |
class | PruningBoundary |
Represents an optional pruning boundary. More... | |
struct | SetKeyTraits |
Key-related traits for stl set types. More... | |
struct | SetStorageTraits |
Base set compatible traits for stl set types. More... | |
Typedefs | |
template<typename TFindTraits , typename TSetTraits > | |
using | BaseSetFindIterator = detail::BaseSetSingleIteratorWrapper< TFindTraits, TSetTraits, typename TSetTraits::SetType::const_iterator, typename TFindTraits::ConstResultType > |
Iterator that returns a find result from a base set. More... | |
template<typename TFindTraits , typename TSetTraits > | |
using | BaseSetDeltaFindIterator = detail::BaseSetSingleIteratorWrapper< TFindTraits, TSetTraits, typename TSetTraits::MemorySetType::iterator, typename TFindTraits::ResultType > |
Iterator that returns a find result from a base set delta. More... | |
template<typename TFindTraits , typename TSetTraits > | |
using | BaseSetDeltaFindConstIterator = detail::BaseSetConditionalIteratorWrapper< TFindTraits, TSetTraits, typename TSetTraits::SetType::const_iterator, typename TSetTraits::MemorySetType::const_iterator, typename TFindTraits::ConstResultType > |
Iterator that returns a find (const) result from a base set delta. More... | |
template<typename TElementTraits , typename TStorageTraits = SetStorageTraits<detail::OrderedSetType<TElementTraits>>> | |
using | OrderedSetDelta = BaseSetDelta< TElementTraits, TStorageTraits > |
A delta on top of a base set with ordered keys. More... | |
Enumerations | |
enum | InsertResult { InsertResult::Unremoved, InsertResult::Updated, InsertResult::Redundant, InsertResult::Inserted } |
Possible results of an insert into a base set delta. More... | |
enum | RemoveResult { RemoveResult::None, RemoveResult::Unmodified_And_Removed, RemoveResult::Uninserted, RemoveResult::Redundant, RemoveResult::Removed } |
Possible results of a remove from a base set delta. More... | |
enum | ConditionalContainerMode { ConditionalContainerMode::Storage, ConditionalContainerMode::Memory } |
Possible conditional container modes. More... | |
Functions | |
template<typename TKeyTraits , typename TStorageSet , typename TMemorySet > | |
void | UpdateSet (TStorageSet &elements, const DeltaElements< TMemorySet > &deltas) |
Applies all changes in deltas to elements. More... | |
template<typename TElementTraits , typename TSetTraits > | |
BaseSetDeltaIterationView< TSetTraits > | MakeIterableView (const BaseSetDelta< TElementTraits, TSetTraits > &delta) |
template<typename TSet > | |
bool | IsSetIterable (const TSet &) |
Returns true if set is iterable. More... | |
template<typename TSet > | |
const TSet & | SelectIterableSet (const TSet &set) |
Selects the iterable set from set. More... | |
template<typename TElementTraits , typename TSetTraits , typename TCommitPolicy > | |
bool | IsBaseSetIterable (const BaseSet< TElementTraits, TSetTraits, TCommitPolicy > &set) |
Returns true if set is iterable. More... | |
template<typename TElementTraits , typename TSetTraits , typename TCommitPolicy > | |
BaseSetIterationView< TSetTraits > | MakeIterableView (const BaseSet< TElementTraits, TSetTraits, TCommitPolicy > &set) |
template<typename TContainer , typename TElements > | |
bool | ContainsAny (const TContainer &container, const TElements &elements) |
template<typename TContainer , typename TElements > | |
void | InsertAll (TContainer &container, const TElements &elements) |
template<typename TContainer , typename TElements > | |
void | RemoveAll (TContainer &container, const TElements &elements) |
Removes all elements from the container (pContainer). More... | |
template<typename TKeyTraits , typename TStorageSet , typename TMemorySet > | |
bool | IsSetIterable (const ConditionalContainer< TKeyTraits, TStorageSet, TMemorySet > &set) |
template<typename TKeyTraits , typename TStorageSet , typename TMemorySet > | |
const TMemorySet & | SelectIterableSet (const ConditionalContainer< TKeyTraits, TStorageSet, TMemorySet > &set) |
template<typename TKeyTraits , typename TStorageSet , typename TMemorySet > | |
void | UpdateSet (ConditionalContainer< TKeyTraits, TStorageSet, TMemorySet > &container, const DeltaElements< TMemorySet > &deltas) |
template<typename TKeyTraits , typename TStorageSet , typename TMemorySet , typename TPruningBoundary > | |
void | PruneBaseSet (ConditionalContainer< TKeyTraits, TStorageSet, TMemorySet > &container, const TPruningBoundary &pruningBoundary) |
template<typename TSet , typename X = decltype((*reinterpret_cast<TSet*>(0)).lower_bound(typename TSet::value_type()))> | |
void | PruneBaseSet (TSet &elements, const PruningBoundary< typename TSet::value_type > &pruningBoundary) |
Optionally prunes elements using pruningBoundary, which indicates the upper bound of elements to remove. More... | |
using catapult::deltaset::BaseSetDeltaFindConstIterator = typedef detail::BaseSetConditionalIteratorWrapper< TFindTraits, TSetTraits, typename TSetTraits::SetType::const_iterator, typename TSetTraits::MemorySetType::const_iterator, typename TFindTraits::ConstResultType > |
Iterator that returns a find (const) result from a base set delta.
using catapult::deltaset::BaseSetDeltaFindIterator = typedef detail::BaseSetSingleIteratorWrapper< TFindTraits, TSetTraits, typename TSetTraits::MemorySetType::iterator, typename TFindTraits::ResultType > |
Iterator that returns a find result from a base set delta.
using catapult::deltaset::BaseSetFindIterator = typedef detail::BaseSetSingleIteratorWrapper< TFindTraits, TSetTraits, typename TSetTraits::SetType::const_iterator, typename TFindTraits::ConstResultType > |
Iterator that returns a find result from a base set.
using catapult::deltaset::OrderedSetDelta = typedef BaseSetDelta<TElementTraits, TStorageTraits> |
A delta on top of a base set with ordered keys.
|
strong |
|
strong |
Possible results of an insert into a base set delta.
|
strong |
Possible results of a remove from a base set delta.
bool catapult::deltaset::ContainsAny | ( | const TContainer & | container, |
const TElements & | elements | ||
) |
Searches for any of the given elements in the container (pContainer). Returns true
if any element is found or false
if none is found.
void catapult::deltaset::InsertAll | ( | TContainer & | container, |
const TElements & | elements | ||
) |
Inserts all elements into the container (pContainer).
bool catapult::deltaset::IsBaseSetIterable | ( | const BaseSet< TElementTraits, TSetTraits, TCommitPolicy > & | set | ) |
Returns true
if set is iterable.
bool catapult::deltaset::IsSetIterable | ( | const ConditionalContainer< TKeyTraits, TStorageSet, TMemorySet > & | set | ) |
Returns true
if set is iterable.
bool catapult::deltaset::IsSetIterable | ( | const TSet & | ) |
Returns true
if set is iterable.
BaseSetIterationView<TSetTraits> catapult::deltaset::MakeIterableView | ( | const BaseSet< TElementTraits, TSetTraits, TCommitPolicy > & | set | ) |
Makes a base set iterable.
BaseSetDeltaIterationView<TSetTraits> catapult::deltaset::MakeIterableView | ( | const BaseSetDelta< TElementTraits, TSetTraits > & | delta | ) |
Makes a base set delta iterable.
void catapult::deltaset::PruneBaseSet | ( | ConditionalContainer< TKeyTraits, TStorageSet, TMemorySet > & | container, |
const TPruningBoundary & | pruningBoundary | ||
) |
Optionally prunes elements using pruningBoundary, which indicates the upper bound of elements to remove.
void catapult::deltaset::PruneBaseSet | ( | TSet & | elements, |
const PruningBoundary< typename TSet::value_type > & | pruningBoundary | ||
) |
Optionally prunes elements using pruningBoundary, which indicates the upper bound of elements to remove.
void catapult::deltaset::RemoveAll | ( | TContainer & | container, |
const TElements & | elements | ||
) |
Removes all elements from the container (pContainer).
const TMemorySet& catapult::deltaset::SelectIterableSet | ( | const ConditionalContainer< TKeyTraits, TStorageSet, TMemorySet > & | set | ) |
Selects the iterable set from set.
catapult_invalid_argument | if the set is not memory-based. |
const TSet& catapult::deltaset::SelectIterableSet | ( | const TSet & | set | ) |
Selects the iterable set from set.
void catapult::deltaset::UpdateSet | ( | ConditionalContainer< TKeyTraits, TStorageSet, TMemorySet > & | container, |
const DeltaElements< TMemorySet > & | deltas | ||
) |
Applies all changes in deltas to container.
void catapult::deltaset::UpdateSet | ( | TStorageSet & | elements, |
const DeltaElements< TMemorySet > & | deltas | ||
) |
Applies all changes in deltas to elements.