removed final specifier

This commit is contained in:
Michele Caini
2019-01-23 15:51:21 +01:00
parent fe3f6aa22b
commit f0926f1cc7
12 changed files with 39 additions and 39 deletions

View File

@@ -18,7 +18,7 @@ namespace entt {
* This class fills the gap by wrapping some flavors of `std::sort` in a
* function object.
*/
struct std_sort final {
struct std_sort {
/**
* @brief Sorts the elements in a range.
*
@@ -40,7 +40,7 @@ struct std_sort final {
/*! @brief Function object for performing insertion sort. */
struct insertion_sort final {
struct insertion_sort {
/**
* @brief Sorts the elements in a range.
*

View File

@@ -19,8 +19,8 @@ namespace entt {
* Because of that, a hashed string can also be used in constant expressions if
* required.
*/
class hashed_string final {
struct const_wrapper final {
class hashed_string {
struct const_wrapper {
// non-explicit constructor on purpose
constexpr const_wrapper(const char *str) ENTT_NOEXCEPT: str{str} {}
const char *str;

View File

@@ -40,7 +40,7 @@ namespace entt {
* @tparam Types List of types for which to generate identifiers.
*/
template<typename... Types>
class identifier final {
class identifier {
using tuple_type = std::tuple<std::decay_t<Types>...>;
template<typename Type, std::size_t... Indexes>

View File

@@ -17,7 +17,7 @@ namespace entt {
* @tparam Entity A valid entity type (see entt_traits for more details).
*/
template<bool Const, typename Entity>
struct as_view final {
struct as_view {
/*! @brief Type of registry to convert. */
using registry_type = std::conditional_t<Const, const entt::registry<Entity>, entt::registry<Entity>>;

View File

@@ -37,7 +37,7 @@ namespace entt {
* @tparam Entity A valid entity type (see entt_traits for more details).
*/
template<typename Entity>
class prototype final {
class prototype {
using basic_fn_type = void(const prototype &, registry<Entity> &, const Entity);
using component_type = typename registry<Entity>::component_type;

View File

@@ -35,7 +35,7 @@ class registry;
* @tparam Entity A valid entity type (see entt_traits for more details).
*/
template<typename Entity>
class snapshot final {
class snapshot {
/*! @brief A registry is allowed to create snapshots. */
friend class registry<Entity>;
@@ -197,7 +197,7 @@ private:
* @tparam Entity A valid entity type (see entt_traits for more details).
*/
template<typename Entity>
class snapshot_loader final {
class snapshot_loader {
/*! @brief A registry is allowed to create snapshot loaders. */
friend class registry<Entity>;
@@ -343,7 +343,7 @@ private:
* @tparam Entity A valid entity type (see entt_traits for more details).
*/
template<typename Entity>
class continuous_loader final {
class continuous_loader {
using traits_type = entt_traits<Entity>;
void destroy(Entity entity) {

View File

@@ -61,7 +61,7 @@ template<typename Entity>
class sparse_set<Entity> {
using traits_type = entt_traits<Entity>;
class iterator final {
class iterator {
friend class sparse_set<Entity>;
using direct_type = const std::vector<Entity>;
@@ -519,7 +519,7 @@ class sparse_set<Entity, Type>: public sparse_set<Entity> {
using traits_type = entt_traits<Entity>;
template<bool Const, bool = std::is_empty_v<Type>>
class iterator final {
class iterator {
friend class sparse_set<Entity, Type>;
using instance_type = std::conditional_t<Const, const std::vector<Type>, std::vector<Type>>;
@@ -627,7 +627,7 @@ class sparse_set<Entity, Type>: public sparse_set<Entity> {
};
template<bool Const>
class iterator<Const, true> final {
class iterator<Const, true> {
friend class sparse_set<Entity, Type>;
using instance_type = std::conditional_t<Const, const Type, Type>;

View File

@@ -68,7 +68,7 @@ class registry;
* @tparam Component Types of components iterated by the view.
*/
template<typename Entity, typename... Component>
class persistent_view final {
class persistent_view {
static_assert(sizeof...(Component));
/*! @brief A registry is allowed to create views. */
@@ -359,7 +359,7 @@ private:
* @tparam Component Types of components iterated by the view.
*/
template<typename Entity, typename... Component>
class view final {
class view {
static_assert(sizeof...(Component) > 1);
/*! @brief A registry is allowed to create views. */
@@ -714,7 +714,7 @@ private:
* @tparam Component Type of component iterated by the view.
*/
template<typename Entity, typename Component>
class view<Entity, Component> final {
class view<Entity, Component> {
/*! @brief A registry is allowed to create views. */
friend class registry<Entity>;

View File

@@ -23,7 +23,7 @@ namespace entt {
* @tparam Service Type of service managed by the locator.
*/
template<typename Service>
struct service_locator final {
struct service_locator {
/*! @brief Type of service offered. */
using service_type = Service;

View File

@@ -41,7 +41,7 @@ namespace internal {
struct meta_type_node;
struct meta_prop_node final {
struct meta_prop_node {
meta_prop_node * const next;
meta_any(* const key)();
meta_any(* const value)();
@@ -49,7 +49,7 @@ struct meta_prop_node final {
};
struct meta_base_node final {
struct meta_base_node {
meta_base_node * const next;
meta_type_node * const parent;
meta_type_node *(* const type)();
@@ -58,7 +58,7 @@ struct meta_base_node final {
};
struct meta_conv_node final {
struct meta_conv_node {
meta_conv_node * const next;
meta_type_node * const parent;
meta_type_node *(* const type)();
@@ -67,7 +67,7 @@ struct meta_conv_node final {
};
struct meta_ctor_node final {
struct meta_ctor_node {
using size_type = std::size_t;
meta_ctor_node * const next;
meta_type_node * const parent;
@@ -79,14 +79,14 @@ struct meta_ctor_node final {
};
struct meta_dtor_node final {
struct meta_dtor_node {
meta_type_node * const parent;
bool(* const invoke)(meta_handle);
meta_dtor(* const meta)();
};
struct meta_data_node final {
struct meta_data_node {
const hashed_string name;
meta_data_node * const next;
meta_type_node * const parent;
@@ -100,7 +100,7 @@ struct meta_data_node final {
};
struct meta_func_node final {
struct meta_func_node {
using size_type = std::size_t;
const hashed_string name;
meta_func_node * const next;
@@ -116,7 +116,7 @@ struct meta_func_node final {
};
struct meta_type_node final {
struct meta_type_node {
const hashed_string name;
meta_type_node * const next;
meta_prop_node * const prop;
@@ -291,7 +291,7 @@ inline auto ctor(std::index_sequence<Indexes...>, const meta_type_node *node) EN
* of pointers. This will greatly improve the use of the cache, thus increasing
* the overall performance.
*/
class meta_any final {
class meta_any {
/*! @brief A meta handle is allowed to _inherit_ from a meta any. */
friend class meta_handle;
@@ -603,7 +603,7 @@ private:
* responsible for ensuring that the target object remains alive for the entire
* interval of use of the handle.
*/
class meta_handle final {
class meta_handle {
meta_handle(int, meta_any &any) ENTT_NOEXCEPT
: node{any.node},
instance{any.instance}
@@ -722,7 +722,7 @@ inline bool operator!=(const meta_any &lhs, const meta_any &rhs) ENTT_NOEXCEPT {
* A meta property is an opaque container for a key/value pair.<br/>
* Properties are associated with any other meta object to enrich it.
*/
class meta_prop final {
class meta_prop {
/*! @brief A meta factory is allowed to create meta objects. */
template<typename> friend class meta_factory;
@@ -792,7 +792,7 @@ inline bool operator!=(const meta_prop &lhs, const meta_prop &rhs) ENTT_NOEXCEPT
* A meta base is an opaque container for a base class to be used to walk
* through hierarchies.
*/
class meta_base final {
class meta_base {
/*! @brief A meta factory is allowed to create meta objects. */
template<typename> friend class meta_factory;
@@ -867,7 +867,7 @@ inline bool operator!=(const meta_base &lhs, const meta_base &rhs) ENTT_NOEXCEPT
* A meta conversion function is an opaque container for a conversion function
* to be used to convert a given instance to another type.
*/
class meta_conv final {
class meta_conv {
/*! @brief A meta factory is allowed to create meta objects. */
template<typename> friend class meta_factory;
@@ -942,7 +942,7 @@ inline bool operator!=(const meta_conv &lhs, const meta_conv &rhs) ENTT_NOEXCEPT
* A meta constructor is an opaque container for a function to be used to
* construct instances of a given type.
*/
class meta_ctor final {
class meta_ctor {
/*! @brief A meta factory is allowed to create meta objects. */
template<typename> friend class meta_factory;
@@ -1072,7 +1072,7 @@ inline bool operator!=(const meta_ctor &lhs, const meta_ctor &rhs) ENTT_NOEXCEPT
* A meta destructor is an opaque container for a function to be used to
* destroy instances of a given type.
*/
class meta_dtor final {
class meta_dtor {
/*! @brief A meta factory is allowed to create meta objects. */
template<typename> friend class meta_factory;
@@ -1146,7 +1146,7 @@ inline bool operator!=(const meta_dtor &lhs, const meta_dtor &rhs) ENTT_NOEXCEPT
* A meta data is an opaque container for a data member associated with a given
* type.
*/
class meta_data final {
class meta_data {
/*! @brief A meta factory is allowed to create meta objects. */
template<typename> friend class meta_factory;
@@ -1303,7 +1303,7 @@ inline bool operator!=(const meta_data &lhs, const meta_data &rhs) ENTT_NOEXCEPT
* A meta function is an opaque container for a member function associated with
* a given type.
*/
class meta_func final {
class meta_func {
/*! @brief A meta factory is allowed to create meta objects. */
template<typename> friend class meta_factory;
@@ -1471,7 +1471,7 @@ inline bool operator!=(const meta_func &lhs, const meta_func &rhs) ENTT_NOEXCEPT
* A meta type is the starting point for accessing a reflected type, thus being
* able to work through it on real objects.
*/
class meta_type final {
class meta_type {
/*! @brief A meta factory is allowed to create meta objects. */
template<typename> friend class meta_factory;

View File

@@ -42,8 +42,8 @@ namespace entt {
* @tparam Delta Type to use to provide elapsed time.
*/
template<typename Delta>
class scheduler final {
struct process_handler final {
class scheduler {
struct process_handler {
using instance_type = std::unique_ptr<void, void(*)(void *)>;
using update_fn_type = bool(process_handler &, Delta, void *);
using abort_fn_type = void(process_handler &, bool);
@@ -55,7 +55,7 @@ class scheduler final {
next_type next;
};
struct continuation final {
struct continuation {
continuation(process_handler *handler)
: handler{handler}
{

View File

@@ -28,7 +28,7 @@ class resource_cache;
* @tparam Resource Type of resource managed by a handle.
*/
template<typename Resource>
class resource_handle final {
class resource_handle {
/*! @brief Resource handles are friends of their caches. */
friend class resource_cache<Resource>;