PMDK C++ bindings
1.12-git53.g67ba2be4
This is the C++ bindings documentation for PMDK's libpmemobj.
Main Page
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
m
n
o
p
r
s
t
Functions
a
b
c
d
e
g
m
n
o
p
r
s
t
Typedefs
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
~
Functions
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
~
Variables
Typedefs
Enumerations
Related Functions
Files
File List
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Friends
Pages
libpmemobj++
detail
array_traits.hpp
Go to the documentation of this file.
1
// SPDX-License-Identifier: BSD-3-Clause
2
/* Copyright 2016-2018, Intel Corporation */
3
9
#ifndef LIBPMEMOBJ_CPP_ARRAY_TRAITS_HPP
10
#define LIBPMEMOBJ_CPP_ARRAY_TRAITS_HPP
11
12
#include <cstddef>
13
14
namespace
pmem
15
{
16
17
namespace
detail
18
{
19
20
/*
21
* Returns the number of array elements.
22
*/
23
template
<
typename
T>
24
struct
pp_array_elems {
25
enum
{ elems = 1 };
26
};
27
28
/*
29
* Returns the number of array elements.
30
*/
31
template
<
typename
T,
size_t
N>
32
struct
pp_array_elems<T[N]> {
33
enum
{ elems = N };
34
};
35
36
/*
37
* Returns the type of elements in an array.
38
*/
39
template
<
typename
T>
40
struct
pp_array_type;
41
42
/*
43
* Returns the type of elements in an array.
44
*/
45
template
<
typename
T>
46
struct
pp_array_type<T[]> {
47
typedef
T type;
48
};
49
50
/*
51
* Returns the type of elements in an array.
52
*/
53
template
<
typename
T,
size_t
N>
54
struct
pp_array_type<T[N]> {
55
typedef
T type;
56
};
57
58
}
/* namespace detail */
59
60
}
/* namespace pmem */
61
62
#endif
/* LIBPMEMOBJ_CPP_ARRAY_TRAITS_HPP */
pmem
Persistent memory namespace.
Definition:
allocation_flag.hpp:15
Generated by
1.8.20