Displaying 4 results from an estimated 4 matches for "pointer_traits".
2018 Jan 23
2
RFC: Towards unified semantic for casts
...implicitly convertible to bool) so that:
- for each fancy_pointer<T> t: isa<G>(t) returns true iff current
implementation of isa<G>(nonfancy_t) returns true where
decltype(nonfancy_t) is T*
- all old cast operations should return a raw pointer of type typename
std::pointer_traits<fancy_pointer<T>>::element_type * and do not perform
ownership transfer.
- move_[dyn_]cast should do what unique_dyn_cast is currently doing in a
more generic manner: it moves to an object of type typename
std::pointer_traits<fancy_pointer<T>>::rebind<G>
N...
2017 Jan 16
4
[RFC 0/2] Propose a new pointer trait.
...t;();
vec_ptr->emplace_back(foo, parameters);
}
}
The problem occurs when standard library containers have metadata. For example
rb tree nodes carry their color, which will not be included in the
transaction's undo log. To address this we propose to define a new type in the
std::pointer_traits, which could be used to wrap the containers' metadata in
a user-defined type. This should be fully backward compatible and as such not
mandatory.
This is a standard level change and we would like to gather feedback for this
idea before we start the whole process. This feature is not persistent...
2018 Jan 23
0
RFC: Towards unified semantic for casts
...l) so that:
>
> - for each fancy_pointer<T> t: isa<G>(t) returns true iff current
> implementation of isa<G>(nonfancy_t) returns true where
> decltype(nonfancy_t) is T*
> - all old cast operations should return a raw pointer of type typename
> std::pointer_traits<fancy_pointer<T>>::element_type * and do not perform
> ownership transfer.
> - move_[dyn_]cast should do what unique_dyn_cast is currently doing in
> a more generic manner: it moves to an object of type typename
> std::pointer_traits<fancy_pointer<T>>...
2018 Jan 23
0
MachineVerifier and undef
...l) so that:
>
> - for each fancy_pointer<T> t: isa<G>(t) returns true iff current
> implementation of isa<G>(nonfancy_t) returns true where
> decltype(nonfancy_t) is T*
> - all old cast operations should return a raw pointer of type typename
> std::pointer_traits<fancy_pointer<T>>::element_type * and do not perform
> ownership transfer.
> - move_[dyn_]cast should do what unique_dyn_cast is currently doing in a
> more generic manner: it moves to an object of type typename
> std::pointer_traits<fancy_pointer<T>>...