The data mapper is a high level API for mapping records to and from the database using high level C++ syntax.
More...
|
template<size_t... Ints> |
using | SqlElements = std::integer_sequence< size_t, Ints... > |
| Represents a sequence of indexes that can be used alongside Query() to retrieve only part of the record.
|
|
|
template<typename Record > |
LIGHTWEIGHT_FORCE_INLINE RecordPrimaryKeyType< Record > | GetPrimaryKeyField (Record const &record) noexcept |
|
|
template<typename Record > |
constexpr size_t | RecordStorageFieldCount |
|
template<typename T > |
constexpr bool | HasPrimaryKey = detail::CheckFieldProperty<[]<typename Field>() { return IsPrimaryKey<Field>; }, T> |
| Tests if the given record type does contain a primary key.
|
|
template<typename T > |
constexpr bool | HasAutoIncrementPrimaryKey |
| Tests if the given record type does contain an auto increment primary key.
|
|
template<std::size_t I, typename Record > |
constexpr std::string_view | FieldNameAt = detail::FieldNameAt<I, Record>() |
| Returns the SQL field name of the given field index in the record.
|
|
template<typename Record > |
constexpr std::string_view | RecordTableName = detail::RecordTableNameImpl<Record>::Value |
| Holds the SQL tabl ename for the given record type.
|
|
The data mapper is a high level API for mapping records to and from the database using high level C++ syntax.
◆ SqlElements
template<size_t... Ints>
using SqlElements = std::integer_sequence<size_t, Ints...> |
Represents a sequence of indexes that can be used alongside Query() to retrieve only part of the record.
Definition at line 59 of file DataMapper.hpp.
◆ GetPrimaryKeyField()
template<typename Record >
LIGHTWEIGHT_FORCE_INLINE RecordPrimaryKeyType< Record > GetPrimaryKeyField |
( |
Record const & |
record | ) |
|
|
inlinenoexcept |
◆ RecordStorageFieldCount
template<typename Record >
constexpr size_t RecordStorageFieldCount |
|
constexpr |
Initial value:=
Reflection::FoldMembers<Record>(
size_t { 0 }, []<
size_t I,
typename Field>(
size_t const accum)
constexpr {
return accum + 1;
else
return accum;
})
Represents a single column in a table.
Represents the number of fields with storage in a record.
Definition at line 44 of file DataMapper.hpp.
◆ HasPrimaryKey
template<typename T >
constexpr bool HasPrimaryKey = detail::CheckFieldProperty<[]<typename Field>() { return IsPrimaryKey<Field>; }, T> |
|
constexpr |
Tests if the given record type does contain a primary key.
Definition at line 78 of file DataMapper.hpp.
◆ HasAutoIncrementPrimaryKey
template<typename T >
constexpr bool HasAutoIncrementPrimaryKey |
|
constexpr |
Initial value:=
detail::CheckFieldProperty<[]<typename Field>() { return IsAutoIncrementPrimaryKey<Field>; }, T>
Tests if the given record type does contain an auto increment primary key.
Definition at line 84 of file DataMapper.hpp.
◆ FieldNameAt
template<std::size_t I, typename Record >
constexpr std::string_view FieldNameAt = detail::FieldNameAt<I, Record>() |
|
inlineconstexpr |
Returns the SQL field name of the given field index in the record.
Definition at line 142 of file Utils.hpp.
◆ RecordTableName
template<typename Record >
constexpr std::string_view RecordTableName = detail::RecordTableNameImpl<Record>::Value |
|
constexpr |
Holds the SQL tabl ename for the given record type.
Definition at line 155 of file Utils.hpp.