5 #ifndef ODB_LAZY_PTR_IMPL_HXX
6 #define ODB_LAZY_PTR_IMPL_HXX
15 #include <odb/details/config.hxx>
16 #include <odb/details/export.hxx>
25 void (*free_) (
void*);
26 void* (*copy_) (
const void*);
81 typedef void (*free_func) (
void*);
82 typedef void* (*copy_func) (
const void*);
90 free_func, copy_func);
100 template <
typename T,
typename DB>
114 template <
typename T>
120 template <
typename DB,
typename ID>
125 template <
typename Y>
133 template <
typename Y>
146 template <
typename Y>
152 template <
typename Y>
161 template <
typename DB,
typename ID>
163 reset (DB&,
const ID&);
167 template <
typename DB>
171 template <
typename ID>
175 template <
typename O >
177 load (
bool reset_id);
179 template <
typename O >
185 #include <odb/lazy-ptr-impl.ixx>
186 #include <odb/lazy-ptr-impl.txx>
190 #endif // ODB_LAZY_PTR_IMPL_HXX
Definition: lazy-ptr-impl.hxx:115
object_traits< O >::id_type object_id() const
odb::database database_type
Definition: lazy-ptr-impl.hxx:32
void *lazy_ptr_base::* unspecified_bool_type
Definition: lazy-ptr-impl.hxx:72
database_type * db_
Definition: lazy-ptr-impl.hxx:106
void * id_
Definition: lazy-ptr-impl.hxx:22
Definition: forward.hxx:123
void * id_
Definition: lazy-ptr-impl.hxx:105
database * db_
Definition: lazy-ptr-impl.hxx:23
Definition: lazy-ptr-impl.hxx:29
void * loader_
Definition: lazy-ptr-impl.hxx:24
Definition: lazy-ptr-impl.hxx:20
Definition: database.hxx:38
lazy_ptr_impl & operator=(const lazy_ptr_impl &)
void swap(lazy_ptr< T > &, lazy_ptr< T > &)
object_traits< O >::pointer_type load(bool reset_id)
void * loader_
Definition: lazy-ptr-impl.hxx:107
access::object_traits< T >::pointer_type pointer_type
Definition: traits.hxx:116