DAW JSON Link
Public Types | Static Public Attributes | List of all members
daw::json::DAW_JSON_VER::json_date< Name, T, Constructor, Nullable > Struct Template Reference

#include <daw_json_link_types.h>

Inheritance diagram for daw::json::DAW_JSON_VER::json_date< Name, T, Constructor, Nullable >:
daw::json::DAW_JSON_VER::json_base::json_date< T, Constructor, Nullable >

Public Types

template<JSONNAMETYPE NewName>
using with_name = json_date< NewName, T, Constructor, Nullable >
 
using without_name = json_base::json_date< T, Constructor, Nullable >
 
- Public Types inherited from daw::json::DAW_JSON_VER::json_base::json_date< T, Constructor, Nullable >
using base_type = json_details::unwrapped_t< T, Nullable >
 
using constructor_t = Constructor
 
using i_am_a_json_type = void
 
using parse_to_t = typename json_details::construction_result< Nullable !=JsonNullable::MustExist, Constructor, char const *, std::size_t >::type
 
template<JSONNAMETYPE NewName>
using with_name = daw::json::json_date< NewName, T, Constructor, Nullable >
 
using without_name = json_date
 
using wrapped_type = T
 

Static Public Attributes

static constexpr daw::string_view name = Name
 
- Static Public Attributes inherited from daw::json::DAW_JSON_VER::json_base::json_date< T, Constructor, Nullable >
static constexpr JsonParseTypes base_expected_type
 
static constexpr JsonParseTypes expected_type
 
static constexpr bool must_be_class_member = false
 
static constexpr daw::string_view name = no_name
 
static constexpr JsonNullable nullable = Nullable
 
static constexpr JsonBaseParseTypes underlying_json_type
 

Detailed Description

template<JSONNAMETYPE Name, typename T, typename Constructor, JsonNullable Nullable>
struct daw::json::DAW_JSON_VER::json_date< Name, T, Constructor, Nullable >

Link to a JSON string representing a nullable date

Template Parameters
Namename of JSON member to link to
TC++ type to construct, by default is a time_point
ConstructorA Callable used to construct a T. Must accept a char pointer and size as argument to the date/time string.

Link to a JSON string representing a date

Template Parameters
Namename of JSON member to link to
TC++ type to construct, must be a std::chrono::time_point
ConstructorA Callable used to construct a T. Must accept a char pointer and size as argument to the date/time string. The default is an iso8601 timestamp parser
NullableCan the member be missing or have a null value

Member Typedef Documentation

◆ with_name

template<JSONNAMETYPE Name, typename T , typename Constructor , JsonNullable Nullable>
template<JSONNAMETYPE NewName>
using daw::json::DAW_JSON_VER::json_date< Name, T, Constructor, Nullable >::with_name = json_date<NewName, T, Constructor, Nullable>

◆ without_name

template<JSONNAMETYPE Name, typename T , typename Constructor , JsonNullable Nullable>
using daw::json::DAW_JSON_VER::json_date< Name, T, Constructor, Nullable >::without_name = json_base::json_date<T, Constructor, Nullable>

Member Data Documentation

◆ name

template<JSONNAMETYPE Name, typename T , typename Constructor , JsonNullable Nullable>
constexpr daw::string_view daw::json::DAW_JSON_VER::json_date< Name, T, Constructor, Nullable >::name = Name
staticconstexpr

The documentation for this struct was generated from the following file: