Dash Core Source Documentation (0.16.0.1)
Find detailed information regarding the Dash Core source code.
immer::memory_policy< HeapPolicy, RefcountPolicy, TransiencePolicy, PreferFewerBiggerObjects, UseTransientRValues > Struct Template Reference
#include <memory_policy.hpp>
Public Types | |
using | heap = HeapPolicy |
using | refcount = RefcountPolicy |
using | transience = TransiencePolicy |
using | transience_t = typename transience::template apply< heap >::type |
Static Public Attributes | |
static constexpr bool | prefer_fewer_bigger_objects |
static constexpr bool | use_transient_rvalues |
Detailed Description
template<typename HeapPolicy, typename RefcountPolicy, typename TransiencePolicy = get_transience_policy_t<RefcountPolicy>, bool PreferFewerBiggerObjects = get_prefer_fewer_bigger_objects_v<HeapPolicy>, bool UseTransientRValues = get_use_transient_rvalues_v<RefcountPolicy>>
struct immer::memory_policy< HeapPolicy, RefcountPolicy, TransiencePolicy, PreferFewerBiggerObjects, UseTransientRValues >
This is a default implementation of a memory policy. A memory policy is just a bag of other policies plus some flags with hints to the user about the best way to use these strategies.
- Template Parameters
-
HeapPolicy A heap policy, for example, heap_policy. RefcountPolicy A reference counting policy, for example, refcount_policy. TransiencePolicy A transience policy, for example, no_transience_policy. PreferFewerBiggerObjects Boolean flag indicating whether the user should prefer to allocate memory in bigger chungs –e.g. by putting various objects in the same memory region– or not. UseTransientRValues Boolean flag indicating whether immutable containers should try to modify contents in-place when manipulating an r-value reference.
Definition at line 92 of file memory_policy.hpp.
Member Typedef Documentation
◆ heap
template<typename HeapPolicy , typename RefcountPolicy , typename TransiencePolicy = get_transience_policy_t<RefcountPolicy>, bool PreferFewerBiggerObjects = get_prefer_fewer_bigger_objects_v<HeapPolicy>, bool UseTransientRValues = get_use_transient_rvalues_v<RefcountPolicy>>
using immer::memory_policy< HeapPolicy, RefcountPolicy, TransiencePolicy, PreferFewerBiggerObjects, UseTransientRValues >::heap = HeapPolicy |
Definition at line 94 of file memory_policy.hpp.
◆ refcount
template<typename HeapPolicy , typename RefcountPolicy , typename TransiencePolicy = get_transience_policy_t<RefcountPolicy>, bool PreferFewerBiggerObjects = get_prefer_fewer_bigger_objects_v<HeapPolicy>, bool UseTransientRValues = get_use_transient_rvalues_v<RefcountPolicy>>
using immer::memory_policy< HeapPolicy, RefcountPolicy, TransiencePolicy, PreferFewerBiggerObjects, UseTransientRValues >::refcount = RefcountPolicy |
Definition at line 95 of file memory_policy.hpp.
◆ transience
template<typename HeapPolicy , typename RefcountPolicy , typename TransiencePolicy = get_transience_policy_t<RefcountPolicy>, bool PreferFewerBiggerObjects = get_prefer_fewer_bigger_objects_v<HeapPolicy>, bool UseTransientRValues = get_use_transient_rvalues_v<RefcountPolicy>>
using immer::memory_policy< HeapPolicy, RefcountPolicy, TransiencePolicy, PreferFewerBiggerObjects, UseTransientRValues >::transience = TransiencePolicy |
Definition at line 96 of file memory_policy.hpp.
◆ transience_t
template<typename HeapPolicy , typename RefcountPolicy , typename TransiencePolicy = get_transience_policy_t<RefcountPolicy>, bool PreferFewerBiggerObjects = get_prefer_fewer_bigger_objects_v<HeapPolicy>, bool UseTransientRValues = get_use_transient_rvalues_v<RefcountPolicy>>
using immer::memory_policy< HeapPolicy, RefcountPolicy, TransiencePolicy, PreferFewerBiggerObjects, UseTransientRValues >::transience_t = typename transience::template apply<heap>::type |
Definition at line 104 of file memory_policy.hpp.
Member Data Documentation
◆ prefer_fewer_bigger_objects
template<typename HeapPolicy , typename RefcountPolicy , typename TransiencePolicy = get_transience_policy_t<RefcountPolicy>, bool PreferFewerBiggerObjects = get_prefer_fewer_bigger_objects_v<HeapPolicy>, bool UseTransientRValues = get_use_transient_rvalues_v<RefcountPolicy>>
|
static |
Initial value:
=
PreferFewerBiggerObjects
Definition at line 98 of file memory_policy.hpp.
◆ use_transient_rvalues
template<typename HeapPolicy , typename RefcountPolicy , typename TransiencePolicy = get_transience_policy_t<RefcountPolicy>, bool PreferFewerBiggerObjects = get_prefer_fewer_bigger_objects_v<HeapPolicy>, bool UseTransientRValues = get_use_transient_rvalues_v<RefcountPolicy>>
|
static |
Initial value:
=
UseTransientRValues
Definition at line 101 of file memory_policy.hpp.
The documentation for this struct was generated from the following file:
- src/immer/memory_policy.hpp