Commit 4f3e13d6 authored by Dominik Charousset's avatar Dominik Charousset

formatting

parent 64dbf780
...@@ -109,7 +109,7 @@ class any_tuple { ...@@ -109,7 +109,7 @@ class any_tuple {
/** /**
* @brief Gets a const pointer to the element at position @p p. * @brief Gets a const pointer to the element at position @p p.
*/ */
void const* at(size_t p) const; const void* at(size_t p) const;
/** /**
* @brief Gets {@link uniform_type_info uniform type information} * @brief Gets {@link uniform_type_info uniform type information}
......
...@@ -61,8 +61,8 @@ class attachable { ...@@ -61,8 +61,8 @@ class attachable {
/** /**
* @brief Any value, used to identify @c attachable instances. * @brief Any value, used to identify @c attachable instances.
*/ */
void const* ptr; const void* ptr;
inline token(const std::type_info& msubtype, void const* mptr) inline token(const std::type_info& msubtype, const void* mptr)
: subtype(msubtype), ptr(mptr) { : subtype(msubtype), ptr(mptr) {
} }
}; };
......
...@@ -139,7 +139,7 @@ class cow_tuple { ...@@ -139,7 +139,7 @@ class cow_tuple {
/** /**
* @brief Gets a const pointer to the element at position @p p. * @brief Gets a const pointer to the element at position @p p.
*/ */
inline void const* at(size_t p) const { inline const void* at(size_t p) const {
return m_vals->at(p); return m_vals->at(p);
} }
......
...@@ -65,12 +65,12 @@ class abstract_tuple : public ref_counted { ...@@ -65,12 +65,12 @@ class abstract_tuple : public ref_counted {
// accessors // accessors
virtual size_t size() const = 0; virtual size_t size() const = 0;
virtual abstract_tuple* copy() const = 0; virtual abstract_tuple* copy() const = 0;
virtual void const* at(size_t pos) const = 0; virtual const void* at(size_t pos) const = 0;
virtual uniform_type_info const* type_at(size_t pos) const = 0; virtual uniform_type_info const* type_at(size_t pos) const = 0;
// returns either tdata<...> object or nullptr (default) if tuple // returns either tdata<...> object or nullptr (default) if tuple
// is not a 'native' implementation // is not a 'native' implementation
virtual void const* native_data() const; virtual const void* native_data() const;
// Identifies the type of the implementation. // Identifies the type of the implementation.
// A statically typed tuple implementation can use some optimizations, // A statically typed tuple implementation can use some optimizations,
......
...@@ -63,7 +63,7 @@ class container_tuple_view : public abstract_tuple { ...@@ -63,7 +63,7 @@ class container_tuple_view : public abstract_tuple {
return new container_tuple_view{new Container(*m_ptr), true}; return new container_tuple_view{new Container(*m_ptr), true};
} }
void const* at(size_t pos) const { const void* at(size_t pos) const {
CPPA_REQUIRE(pos < size()); CPPA_REQUIRE(pos < size());
auto i = m_ptr->begin(); auto i = m_ptr->begin();
std::advance(i, pos); std::advance(i, pos);
......
...@@ -86,7 +86,7 @@ class decorated_tuple : public abstract_tuple { ...@@ -86,7 +86,7 @@ class decorated_tuple : public abstract_tuple {
return new decorated_tuple(*this); return new decorated_tuple(*this);
} }
virtual void const* at(size_t pos) const { virtual const void* at(size_t pos) const {
CPPA_REQUIRE(pos < size()); CPPA_REQUIRE(pos < size());
return m_decorated->at(m_mapping[pos]); return m_decorated->at(m_mapping[pos]);
} }
......
...@@ -111,7 +111,7 @@ class default_uniform_type_info_impl : public util::abstract_uniform_type_info<T ...@@ -111,7 +111,7 @@ class default_uniform_type_info_impl : public util::abstract_uniform_type_info<T
uniform_type_info* m_meta; uniform_type_info* m_meta;
std::function<void (uniform_type_info const*, std::function<void (uniform_type_info const*,
void const*, const void*,
serializer* )> m_serialize; serializer* )> m_serialize;
std::function<void (uniform_type_info const*, std::function<void (uniform_type_info const*,
...@@ -139,7 +139,7 @@ class default_uniform_type_info_impl : public util::abstract_uniform_type_info<T ...@@ -139,7 +139,7 @@ class default_uniform_type_info_impl : public util::abstract_uniform_type_info<T
template<typename R, class C> template<typename R, class C>
member(uniform_type_info* mtptr, R C::*mem_ptr) : m_meta(mtptr) { member(uniform_type_info* mtptr, R C::*mem_ptr) : m_meta(mtptr) {
m_serialize = [mem_ptr] (uniform_type_info const* mt, m_serialize = [mem_ptr] (uniform_type_info const* mt,
void const* obj, const void* obj,
serializer* s) { serializer* s) {
mt->serialize(&(*reinterpret_cast<C const*>(obj).*mem_ptr), s); mt->serialize(&(*reinterpret_cast<C const*>(obj).*mem_ptr), s);
}; };
...@@ -159,7 +159,7 @@ class default_uniform_type_info_impl : public util::abstract_uniform_type_info<T ...@@ -159,7 +159,7 @@ class default_uniform_type_info_impl : public util::abstract_uniform_type_info<T
static_assert(std::is_same<getter_result, setter_arg>::value, static_assert(std::is_same<getter_result, setter_arg>::value,
"getter result doesn't match setter argument"); "getter result doesn't match setter argument");
m_serialize = [getter] (uniform_type_info const* mt, m_serialize = [getter] (uniform_type_info const* mt,
void const* obj, const void* obj,
serializer* s) { serializer* s) {
GRes v = (*reinterpret_cast<C const*>(obj).*getter)(); GRes v = (*reinterpret_cast<C const*>(obj).*getter)();
mt->serialize(&v, s); mt->serialize(&v, s);
...@@ -181,7 +181,7 @@ class default_uniform_type_info_impl : public util::abstract_uniform_type_info<T ...@@ -181,7 +181,7 @@ class default_uniform_type_info_impl : public util::abstract_uniform_type_info<T
static member fake_member(uniform_type_info* mtptr) { static member fake_member(uniform_type_info* mtptr) {
return { return {
mtptr, mtptr,
[] (uniform_type_info const* mt, void const* obj, serializer* s) { [] (uniform_type_info const* mt, const void* obj, serializer* s) {
mt->serialize(obj, s); mt->serialize(obj, s);
}, },
[] (uniform_type_info const* mt, void* obj, deserializer* d) { [] (uniform_type_info const* mt, void* obj, deserializer* d) {
...@@ -199,7 +199,7 @@ class default_uniform_type_info_impl : public util::abstract_uniform_type_info<T ...@@ -199,7 +199,7 @@ class default_uniform_type_info_impl : public util::abstract_uniform_type_info<T
return *this; return *this;
} }
inline void serialize(void const* parent, serializer* s) const { inline void serialize(const void* parent, serializer* s) const {
m_serialize(m_meta, parent, s); m_serialize(m_meta, parent, s);
} }
...@@ -310,7 +310,7 @@ class default_uniform_type_info_impl : public util::abstract_uniform_type_info<T ...@@ -310,7 +310,7 @@ class default_uniform_type_info_impl : public util::abstract_uniform_type_info<T
} }
} }
void serialize(void const* obj, serializer* s) const { void serialize(const void* obj, serializer* s) const {
s->begin_object(this->name()); s->begin_object(this->name());
for (auto& m : m_members) { for (auto& m : m_members) {
m.serialize(obj, s); m.serialize(obj, s);
......
...@@ -45,7 +45,7 @@ class empty_tuple : public abstract_tuple { ...@@ -45,7 +45,7 @@ class empty_tuple : public abstract_tuple {
size_t size() const; size_t size() const;
void* mutable_at(size_t); void* mutable_at(size_t);
abstract_tuple* copy() const; abstract_tuple* copy() const;
void const* at(size_t) const; const void* at(size_t) const;
bool equals(const abstract_tuple& other) const; bool equals(const abstract_tuple& other) const;
uniform_type_info const* type_at(size_t) const; uniform_type_info const* type_at(size_t) const;
std::type_info const* type_token() const; std::type_info const* type_token() const;
......
...@@ -94,7 +94,7 @@ class list_member : public util::abstract_uniform_type_info<List> { ...@@ -94,7 +94,7 @@ class list_member : public util::abstract_uniform_type_info<List> {
public: public:
void serialize(void const* obj, serializer* s) const { void serialize(const void* obj, serializer* s) const {
auto& list = *reinterpret_cast<List const*>(obj); auto& list = *reinterpret_cast<List const*>(obj);
m_helper(list, s); m_helper(list, s);
} }
......
...@@ -124,7 +124,7 @@ class map_member : public util::abstract_uniform_type_info<Map> { ...@@ -124,7 +124,7 @@ class map_member : public util::abstract_uniform_type_info<Map> {
public: public:
void serialize(void const* obj, serializer* s) const { void serialize(const void* obj, serializer* s) const {
auto& mp = *reinterpret_cast<Map const*>(obj); auto& mp = *reinterpret_cast<Map const*>(obj);
s->begin_sequence(mp.size()); s->begin_sequence(mp.size());
for (const auto& val : mp) { for (const auto& val : mp) {
......
...@@ -51,7 +51,7 @@ namespace cppa { namespace detail { ...@@ -51,7 +51,7 @@ namespace cppa { namespace detail {
constexpr SOCKET invalid_socket = INVALID_SOCKET; constexpr SOCKET invalid_socket = INVALID_SOCKET;
#else #else
typedef int native_socket_type; typedef int native_socket_type;
typedef void const* socket_send_ptr; typedef const void* socket_send_ptr;
typedef void* socket_recv_ptr; typedef void* socket_recv_ptr;
constexpr int invalid_socket = -1; constexpr int invalid_socket = -1;
void closesocket(native_socket_type s); void closesocket(native_socket_type s);
......
...@@ -61,7 +61,7 @@ class object_array : public abstract_tuple { ...@@ -61,7 +61,7 @@ class object_array : public abstract_tuple {
abstract_tuple* copy() const; abstract_tuple* copy() const;
void const* at(size_t pos) const; const void* at(size_t pos) const;
bool equals(const cppa::detail::abstract_tuple&) const; bool equals(const cppa::detail::abstract_tuple&) const;
......
...@@ -50,7 +50,7 @@ struct obj_impl : object { ...@@ -50,7 +50,7 @@ struct obj_impl : object {
virtual object* copy() const { return new obj_impl(m_value); } virtual object* copy() const { return new obj_impl(m_value); }
virtual const utype& type() const { return uniform_type_info<T>(); } virtual const utype& type() const { return uniform_type_info<T>(); }
virtual void* mutable_value() { return &m_value; } virtual void* mutable_value() { return &m_value; }
virtual void const* value() const { return &m_value; } virtual const void* value() const { return &m_value; }
virtual void serialize(serializer& s) const { virtual void serialize(serializer& s) const {
s << m_value; s << m_value;
} }
......
...@@ -54,7 +54,7 @@ class pair_member : public util::abstract_uniform_type_info<std::pair<T1,T2>> { ...@@ -54,7 +54,7 @@ class pair_member : public util::abstract_uniform_type_info<std::pair<T1,T2>> {
public: public:
void serialize(void const* obj, serializer* s) const { void serialize(const void* obj, serializer* s) const {
auto& p = *reinterpret_cast<pair_type const*>(obj); auto& p = *reinterpret_cast<pair_type const*>(obj);
primitive_variant values[2] = { p.first, p.second }; primitive_variant values[2] = { p.first, p.second };
s->write_tuple(2, values); s->write_tuple(2, values);
......
...@@ -50,7 +50,7 @@ class primitive_member : public util::abstract_uniform_type_info<T> { ...@@ -50,7 +50,7 @@ class primitive_member : public util::abstract_uniform_type_info<T> {
public: public:
void serialize(void const* obj, serializer* s) const { void serialize(const void* obj, serializer* s) const {
s->write_value(*reinterpret_cast<T const*>(obj)); s->write_value(*reinterpret_cast<T const*>(obj));
} }
......
...@@ -38,7 +38,7 @@ namespace cppa { namespace detail { ...@@ -38,7 +38,7 @@ namespace cppa { namespace detail {
template<typename... T> template<typename... T>
struct pseudo_tuple { struct pseudo_tuple {
typedef void* ptr_type; typedef void* ptr_type;
typedef void const* const_ptr_type; typedef const void* const_ptr_type;
ptr_type data[sizeof...(T) > 0 ? sizeof...(T) : 1]; ptr_type data[sizeof...(T) > 0 ? sizeof...(T) : 1];
......
...@@ -60,13 +60,13 @@ template<typename T> ...@@ -60,13 +60,13 @@ template<typename T>
inline void* ptr_to(T& what) { return &what; } inline void* ptr_to(T& what) { return &what; }
template<typename T> template<typename T>
inline void const* ptr_to(const T& what) { return &what; } inline const void* ptr_to(const T& what) { return &what; }
template<typename T> template<typename T>
inline void* ptr_to(T* what) { return what; } inline void* ptr_to(T* what) { return what; }
template<typename T> template<typename T>
inline void const* ptr_to(T const* what) { return what; } inline const void* ptr_to(T const* what) { return what; }
template<typename T> template<typename T>
inline void* ptr_to(const std::reference_wrapper<T>& what) { inline void* ptr_to(const std::reference_wrapper<T>& what) {
...@@ -74,7 +74,7 @@ inline void* ptr_to(const std::reference_wrapper<T>& what) { ...@@ -74,7 +74,7 @@ inline void* ptr_to(const std::reference_wrapper<T>& what) {
} }
template<typename T> template<typename T>
inline void const* ptr_to(const std::reference_wrapper<const T>& what) { inline const void* ptr_to(const std::reference_wrapper<const T>& what) {
return &(what.get()); return &(what.get());
} }
...@@ -160,7 +160,7 @@ struct tdata<> { ...@@ -160,7 +160,7 @@ struct tdata<> {
const tdata<>& ctail() const { return *this; } const tdata<>& ctail() const { return *this; }
inline void const* at(size_t) const { inline const void* at(size_t) const {
throw std::out_of_range("tdata<>"); throw std::out_of_range("tdata<>");
} }
...@@ -307,7 +307,7 @@ struct tdata<Head, Tail...> : tdata<Tail...> { ...@@ -307,7 +307,7 @@ struct tdata<Head, Tail...> : tdata<Tail...> {
inline const tdata<Tail...>& ctail() const { return *this; } inline const tdata<Tail...>& ctail() const { return *this; }
inline void const* at(size_t p) const { inline const void* at(size_t p) const {
CPPA_REQUIRE(p < num_elements); CPPA_REQUIRE(p < num_elements);
switch (p) { switch (p) {
case 0: return ptr_to(head); case 0: return ptr_to(head);
...@@ -324,7 +324,7 @@ struct tdata<Head, Tail...> : tdata<Tail...> { ...@@ -324,7 +324,7 @@ struct tdata<Head, Tail...> : tdata<Tail...> {
inline void* mutable_at(size_t p) { inline void* mutable_at(size_t p) {
# ifdef CPPA_DEBUG # ifdef CPPA_DEBUG
if (p == 0) { if (p == 0) {
if (std::is_same<decltype(ptr_to(head)), void const*>::value) { if (std::is_same<decltype(ptr_to(head)), const void*>::value) {
throw std::logic_error{"mutable_at with const head"}; throw std::logic_error{"mutable_at with const head"};
} }
return const_cast<void*>(ptr_to(head)); return const_cast<void*>(ptr_to(head));
......
...@@ -95,7 +95,7 @@ class tuple_iterator { ...@@ -95,7 +95,7 @@ class tuple_iterator {
inline size_t position() const { return m_pos; } inline size_t position() const { return m_pos; }
inline void const* value() const { inline const void* value() const {
return m_tuple->at(m_pos); return m_tuple->at(m_pos);
} }
......
...@@ -66,7 +66,7 @@ class tuple_vals : public abstract_tuple { ...@@ -66,7 +66,7 @@ class tuple_vals : public abstract_tuple {
: super(tuple_impl_info::statically_typed), m_data(args...) { : super(tuple_impl_info::statically_typed), m_data(args...) {
} }
void const* native_data() const { const void* native_data() const {
return &m_data; return &m_data;
} }
...@@ -90,7 +90,7 @@ class tuple_vals : public abstract_tuple { ...@@ -90,7 +90,7 @@ class tuple_vals : public abstract_tuple {
return new tuple_vals(*this); return new tuple_vals(*this);
} }
void const* at(size_t pos) const { const void* at(size_t pos) const {
CPPA_REQUIRE(pos < size()); CPPA_REQUIRE(pos < size());
return m_data.at(pos); return m_data.at(pos);
} }
......
...@@ -91,7 +91,7 @@ class tuple_view : public abstract_tuple { ...@@ -91,7 +91,7 @@ class tuple_view : public abstract_tuple {
return result; return result;
} }
void const* at(size_t pos) const { const void* at(size_t pos) const {
CPPA_REQUIRE(pos < size()); CPPA_REQUIRE(pos < size());
return m_data.at(pos); return m_data.at(pos);
} }
......
...@@ -677,7 +677,7 @@ class match_expr { ...@@ -677,7 +677,7 @@ class match_expr {
typedef typename util::if_else_c< typedef typename util::if_else_c<
has_manipulator, has_manipulator,
void*, void*,
util::wrapped<void const*> util::wrapped<const void*>
>::type >::type
ptr_type; ptr_type;
......
...@@ -131,7 +131,7 @@ class object { ...@@ -131,7 +131,7 @@ class object {
* @returns A const pointer to the currently stored value. * @returns A const pointer to the currently stored value.
* @see get(const object&) * @see get(const object&)
*/ */
void const* value() const; const void* value() const;
/** /**
* @brief Gets the stored value. * @brief Gets the stored value.
......
...@@ -38,7 +38,7 @@ namespace cppa { ...@@ -38,7 +38,7 @@ namespace cppa {
namespace detail { namespace detail {
std::string to_string_impl(void const* what, uniform_type_info const* utype); std::string to_string_impl(const void* what, uniform_type_info const* utype);
} // namespace detail } // namespace detail
......
...@@ -37,7 +37,7 @@ ...@@ -37,7 +37,7 @@
namespace cppa { namespace cppa {
typedef std::pair<uniform_type_info const*, void const*> type_value_pair; typedef std::pair<uniform_type_info const*, const void*> type_value_pair;
class type_value_pair_const_iterator { class type_value_pair_const_iterator {
...@@ -63,7 +63,7 @@ class type_value_pair_const_iterator { ...@@ -63,7 +63,7 @@ class type_value_pair_const_iterator {
inline uniform_type_info const* type() const { return iter->first; } inline uniform_type_info const* type() const { return iter->first; }
inline void const* value() const { return iter->second; } inline const void* value() const { return iter->second; }
inline decltype(iter) base() const { return iter; } inline decltype(iter) base() const { return iter; }
......
...@@ -216,7 +216,7 @@ class uniform_type_info { ...@@ -216,7 +216,7 @@ class uniform_type_info {
* @returns @p true if <tt>*instance1 == *instance2</tt>. * @returns @p true if <tt>*instance1 == *instance2</tt>.
* @pre @p instance1 and @p instance2 have the type of @p this. * @pre @p instance1 and @p instance2 have the type of @p this.
*/ */
virtual bool equals(void const* instance1, void const* instance2) const = 0; virtual bool equals(const void* instance1, const void* instance2) const = 0;
/** /**
* @brief Serializes @p instance to @p sink. * @brief Serializes @p instance to @p sink.
...@@ -224,7 +224,7 @@ class uniform_type_info { ...@@ -224,7 +224,7 @@ class uniform_type_info {
* @param sink Target data sink. * @param sink Target data sink.
* @pre @p instance has the type of @p this. * @pre @p instance has the type of @p this.
*/ */
virtual void serialize(void const* instance, serializer* sink) const = 0; virtual void serialize(const void* instance, serializer* sink) const = 0;
/** /**
* @brief Deserializes @p instance from @p source. * @brief Deserializes @p instance from @p source.
...@@ -254,7 +254,7 @@ class uniform_type_info { ...@@ -254,7 +254,7 @@ class uniform_type_info {
* with the default constructor. * with the default constructor.
* @pre @p instance has the type of @p this or is set to @p nullptr. * @pre @p instance has the type of @p this or is set to @p nullptr.
*/ */
virtual void* new_instance(void const* instance = nullptr) const = 0; virtual void* new_instance(const void* instance = nullptr) const = 0;
private: private:
......
...@@ -43,7 +43,7 @@ namespace cppa { namespace util { ...@@ -43,7 +43,7 @@ namespace cppa { namespace util {
template<typename T> template<typename T>
class abstract_uniform_type_info : public uniform_type_info { class abstract_uniform_type_info : public uniform_type_info {
inline static const T& deref(void const* ptr) { inline static const T& deref(const void* ptr) {
return *reinterpret_cast<T const*>(ptr); return *reinterpret_cast<T const*>(ptr);
} }
...@@ -58,11 +58,11 @@ class abstract_uniform_type_info : public uniform_type_info { ...@@ -58,11 +58,11 @@ class abstract_uniform_type_info : public uniform_type_info {
: uniform_type_info(uname) { : uniform_type_info(uname) {
} }
bool equals(void const* lhs, void const* rhs) const { bool equals(const void* lhs, const void* rhs) const {
return deref(lhs) == deref(rhs); return deref(lhs) == deref(rhs);
} }
void* new_instance(void const* ptr) const { void* new_instance(const void* ptr) const {
return (ptr) ? new T(deref(ptr)) : new T(); return (ptr) ? new T(deref(ptr)) : new T();
} }
......
...@@ -57,7 +57,7 @@ class is_iterable { ...@@ -57,7 +57,7 @@ class is_iterable {
} }
// SFNINAE default // SFNINAE default
static void sfinae_fun(void const*) { } static void sfinae_fun(const void*) { }
typedef decltype(sfinae_fun(static_cast<T const*>(nullptr))) result_type; typedef decltype(sfinae_fun(static_cast<T const*>(nullptr))) result_type;
......
...@@ -47,7 +47,7 @@ std::type_info const* abstract_tuple::type_token() const { ...@@ -47,7 +47,7 @@ std::type_info const* abstract_tuple::type_token() const {
return &typeid(void); return &typeid(void);
} }
void const* abstract_tuple::native_data() const { const void* abstract_tuple::native_data() const {
return nullptr; return nullptr;
} }
......
...@@ -102,7 +102,7 @@ uniform_type_info const* object::type() const { ...@@ -102,7 +102,7 @@ uniform_type_info const* object::type() const {
return m_type; return m_type;
} }
void const* object::value() const { const void* object::value() const {
return m_value; return m_value;
} }
......
...@@ -55,7 +55,7 @@ abstract_tuple* object_array::copy() const { ...@@ -55,7 +55,7 @@ abstract_tuple* object_array::copy() const {
return new object_array(*this); return new object_array(*this);
} }
void const* object_array::at(size_t pos) const { const void* object_array::at(size_t pos) const {
return m_elements[pos].value(); return m_elements[pos].value();
} }
......
...@@ -145,6 +145,14 @@ void deserialize_nullptr(deserializer* source) { ...@@ -145,6 +145,14 @@ void deserialize_nullptr(deserializer* source) {
class void_type_tinfo : public uniform_type_info { class void_type_tinfo : public uniform_type_info {
public:
void_type_tinfo() : uniform_type_info(to_uniform_name(typeid(void_type))) {}
bool equals(const std::type_info &tinfo) const {
return typeid(void_type) == tinfo;
}
protected: protected:
void serialize(const void*, serializer* sink) const { void serialize(const void*, serializer* sink) const {
...@@ -164,19 +172,19 @@ class void_type_tinfo : public uniform_type_info { ...@@ -164,19 +172,19 @@ class void_type_tinfo : public uniform_type_info {
} }
void* new_instance(const void*) const { void* new_instance(const void*) const {
return new void_type; // const_cast cannot cause any harm, because void_type is immutable
return const_cast<void*>(static_cast<const void*>(&m_value));
} }
void delete_instance(void* instance) const { void delete_instance(void* instance) const {
delete reinterpret_cast<void_type*>(instance); CPPA_REQUIRE(instance == &m_value);
// keep compiler happy (suppress unused argument warning)
static_cast<void>(instance);
} }
private:
public: void_type m_value;
bool equals(const std::type_info &tinfo) const {
return typeid(void_type) == tinfo;
}
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment