Skip to content

Commit d4014c7

Browse files
committed
update single include file
1 parent 21ac61a commit d4014c7

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

single_include/entt/entt.hpp

+6-4
Original file line numberDiff line numberDiff line change
@@ -23240,14 +23240,15 @@ template<typename... Args>
2324023240
typename basic_storage<Args...>::entity_type to_entity(const basic_storage<Args...> &storage, const typename basic_storage<Args...>::value_type &instance) {
2324123241
using traits_type = component_traits<typename basic_storage<Args...>::value_type, typename basic_storage<Args...>::entity_type>;
2324223242
static_assert(traits_type::page_size != 0u, "Unexpected page size");
23243-
const typename basic_storage<Args...>::base_type &base = storage;
2324423243
const auto *page = storage.raw();
2324523244

23245+
// NOLINTBEGIN(cppcoreguidelines-pro-bounds-pointer-arithmetic)
2324623246
for(std::size_t pos{}, count = storage.size(); pos < count; pos += traits_type::page_size, ++page) {
2324723247
if(const auto dist = (std::addressof(instance) - *page); dist >= 0 && dist < static_cast<decltype(dist)>(traits_type::page_size)) {
23248-
return *(base.rbegin() + static_cast<decltype(dist)>(pos) + dist);
23248+
return *(static_cast<const typename basic_storage<Args...>::base_type &>(storage).rbegin() + static_cast<decltype(dist)>(pos) + dist);
2324923249
}
2325023250
}
23251+
// NOLINTEND(cppcoreguidelines-pro-bounds-pointer-arithmetic)
2325123252

2325223253
return null;
2325323254
}
@@ -34373,14 +34374,15 @@ template<typename... Args>
3437334374
typename basic_storage<Args...>::entity_type to_entity(const basic_storage<Args...> &storage, const typename basic_storage<Args...>::value_type &instance) {
3437434375
using traits_type = component_traits<typename basic_storage<Args...>::value_type, typename basic_storage<Args...>::entity_type>;
3437534376
static_assert(traits_type::page_size != 0u, "Unexpected page size");
34376-
const typename basic_storage<Args...>::base_type &base = storage;
3437734377
const auto *page = storage.raw();
3437834378

34379+
// NOLINTBEGIN(cppcoreguidelines-pro-bounds-pointer-arithmetic)
3437934380
for(std::size_t pos{}, count = storage.size(); pos < count; pos += traits_type::page_size, ++page) {
3438034381
if(const auto dist = (std::addressof(instance) - *page); dist >= 0 && dist < static_cast<decltype(dist)>(traits_type::page_size)) {
34381-
return *(base.rbegin() + static_cast<decltype(dist)>(pos) + dist);
34382+
return *(static_cast<const typename basic_storage<Args...>::base_type &>(storage).rbegin() + static_cast<decltype(dist)>(pos) + dist);
3438234383
}
3438334384
}
34385+
// NOLINTEND(cppcoreguidelines-pro-bounds-pointer-arithmetic)
3438434386

3438534387
return null;
3438634388
}

0 commit comments

Comments
 (0)