Abstract Datasets

The concepts svs::data::ImmutableMemoryDataset and svs::data::MemoryDataset are used to encapsulate the expected behavior of classes implementing datasets. These concepts are described below. Concrete implementations of these concepts can be found here.

Main Concepts

This sub-section highlights the main exported concepts that are expected to be used by this logical grouping of code.

Warning

doxygenconcept: Cannot find concept “svs::data::ImmutableMemoryDataset” in doxygen xml output for project “SVS” from directory: /home/runner/work/_temp/build_docs/docs/doxygen/xml

Warning

doxygenconcept: Cannot find concept “svs::data::MemoryDataset” in doxygen xml output for project “SVS” from directory: /home/runner/work/_temp/build_docs/docs/doxygen/xml

Public API

Warning

doxygenconcept: Cannot find concept “svs::data::HasValueType” in doxygen xml output for project “SVS” from directory: /home/runner/work/_temp/build_docs/docs/doxygen/xml

template<HasValueType T>
using value_type_t = typename T::value_type

Get the value_type of T.

template<HasValueType T>
using const_value_type_t = typename T::const_value_type

Get the const_value_type of T.

template<typename T> concept HasValueType  = requires {typename T::value_type;typename T::const_value_type;}

Require the type aliases value_type and const_value_type.

The members and inline documentation are given in the code snippet below.

template<typename T>
concept HasValueType = requires {
   // Require that ``T`` has the type alias ``T::value_type``.
   //
   // Note that the the alias does not necessarily need to be a "value_type" in the
   // sence of C++ value type. In other words, it can (and probably should be for
   // performance reasons be a reference).
   typename T::value_type;

   // Require that ``T`` has the type alias ``T::const_value_type``.
   //
   // Note that the the alias does not necessarily need to be a "value_type" in the
   // sence of C++ value type. In other words, it can (and probably should be for
   // performance reasons be a reference).
   typename T::const_value_type;
};