diff --git a/src/openvic-simulation/InstanceManager.cpp b/src/openvic-simulation/InstanceManager.cpp index a98f0cc7b..cf628e40c 100644 --- a/src/openvic-simulation/InstanceManager.cpp +++ b/src/openvic-simulation/InstanceManager.cpp @@ -2,8 +2,8 @@ #include "openvic-simulation/DefinitionManager.hpp" #include "openvic-simulation/console/ConsoleInstance.hpp" +#include "openvic-simulation/core/stl/containers/TypedSpan.hpp" #include "openvic-simulation/misc/GameAction.hpp" -#include "openvic-simulation/types/TypedSpan.hpp" #include "openvic-simulation/utility/Logger.hpp" using namespace OpenVic; diff --git a/src/openvic-simulation/core/memory/CowPtr.hpp b/src/openvic-simulation/core/memory/CowPtr.hpp index ccd906349..edcf9e34b 100644 --- a/src/openvic-simulation/core/memory/CowPtr.hpp +++ b/src/openvic-simulation/core/memory/CowPtr.hpp @@ -4,12 +4,9 @@ #include #include "openvic-simulation/core/memory/MemoryTracker.hpp" -#include "openvic-simulation/types/CowPtr.hpp" +#include "openvic-simulation/core/stl/containers/CowPtr.hpp" namespace OpenVic::memory { template - using cow_ptr = ::OpenVic::cow_ptr< - T, - foonathan::memory::std_allocator> - >; -} \ No newline at end of file + using cow_ptr = ::OpenVic::stl::cow_ptr>>; +} diff --git a/src/openvic-simulation/core/memory/CowVector.hpp b/src/openvic-simulation/core/memory/CowVector.hpp index 8ddab3c17..4a2db1930 100644 --- a/src/openvic-simulation/core/memory/CowVector.hpp +++ b/src/openvic-simulation/core/memory/CowVector.hpp @@ -4,12 +4,9 @@ #include #include "openvic-simulation/core/memory/MemoryTracker.hpp" -#include "openvic-simulation/types/CowVector.hpp" +#include "openvic-simulation/core/stl/containers/CowVector.hpp" namespace OpenVic::memory { template - using cow_vector = ::OpenVic::cow_vector< - T, - foonathan::memory::std_allocator> - >; -} \ No newline at end of file + using cow_vector = ::OpenVic::stl::cow_vector>>; +} diff --git a/src/openvic-simulation/core/memory/FixedVector.hpp b/src/openvic-simulation/core/memory/FixedVector.hpp new file mode 100644 index 000000000..c1f089a7f --- /dev/null +++ b/src/openvic-simulation/core/memory/FixedVector.hpp @@ -0,0 +1,12 @@ +#pragma once + +#include +#include + +#include "openvic-simulation/core/memory/MemoryTracker.hpp" +#include "openvic-simulation/core/stl/containers/FixedVector.hpp" + +namespace OpenVic::memory { + template + using FixedVector = ::OpenVic::stl::FixedVector>>; +} diff --git a/src/openvic-simulation/core/memory/RingBuffer.hpp b/src/openvic-simulation/core/memory/RingBuffer.hpp new file mode 100644 index 000000000..e66774e4d --- /dev/null +++ b/src/openvic-simulation/core/memory/RingBuffer.hpp @@ -0,0 +1,12 @@ +#pragma once + +#include +#include + +#include "openvic-simulation/core/memory/MemoryTracker.hpp" +#include "openvic-simulation/core/stl/containers/RingBuffer.hpp" + +namespace OpenVic::memory { + template + using RingBuffer = ::OpenVic::stl::RingBuffer>>; +} diff --git a/src/openvic-simulation/core/portable/ForwardableSpan.hpp b/src/openvic-simulation/core/portable/ForwardableSpan.hpp index fe117bc0f..16815ceaa 100644 --- a/src/openvic-simulation/core/portable/ForwardableSpan.hpp +++ b/src/openvic-simulation/core/portable/ForwardableSpan.hpp @@ -10,7 +10,7 @@ #include #include "openvic-simulation/core/Typedefs.hpp" -#include "openvic-simulation/types/BasicIterator.hpp" +#include "openvic-simulation/core/stl/BasicIterator.hpp" namespace OpenVic::_detail::forwardable_span { static constexpr std::size_t dynamic_extent = std::numeric_limits::max(); diff --git a/src/openvic-simulation/types/BasicIterator.hpp b/src/openvic-simulation/core/stl/BasicIterator.hpp similarity index 100% rename from src/openvic-simulation/types/BasicIterator.hpp rename to src/openvic-simulation/core/stl/BasicIterator.hpp index f1155a4c2..b81c656f7 100644 --- a/src/openvic-simulation/types/BasicIterator.hpp +++ b/src/openvic-simulation/core/stl/BasicIterator.hpp @@ -3,8 +3,8 @@ #include #include -#include "openvic-simulation/core/Typedefs.hpp" #include "openvic-simulation/core/Compare.hpp" +#include "openvic-simulation/core/Typedefs.hpp" namespace OpenVic { template diff --git a/src/openvic-simulation/utility/TslHelper.hpp b/src/openvic-simulation/core/stl/MutableIterator.hpp similarity index 100% rename from src/openvic-simulation/utility/TslHelper.hpp rename to src/openvic-simulation/core/stl/MutableIterator.hpp diff --git a/src/openvic-simulation/types/CowPtr.hpp b/src/openvic-simulation/core/stl/containers/CowPtr.hpp similarity index 99% rename from src/openvic-simulation/types/CowPtr.hpp rename to src/openvic-simulation/core/stl/containers/CowPtr.hpp index 15fc88d8a..9a7c9591c 100644 --- a/src/openvic-simulation/types/CowPtr.hpp +++ b/src/openvic-simulation/core/stl/containers/CowPtr.hpp @@ -10,7 +10,7 @@ #include "openvic-simulation/core/template/Concepts.hpp" #include "openvic-simulation/core/Typedefs.hpp" -namespace OpenVic { +namespace OpenVic::stl { /** * A Copy-On-Write pointer * diff --git a/src/openvic-simulation/types/CowVector.hpp b/src/openvic-simulation/core/stl/containers/CowVector.hpp similarity index 96% rename from src/openvic-simulation/types/CowVector.hpp rename to src/openvic-simulation/core/stl/containers/CowVector.hpp index 38b9a62fd..1b506e790 100644 --- a/src/openvic-simulation/types/CowVector.hpp +++ b/src/openvic-simulation/core/stl/containers/CowVector.hpp @@ -9,15 +9,16 @@ #include #include #include +#include #include "openvic-simulation/core/Assert.hpp" -#include "openvic-simulation/types/BasicIterator.hpp" -#include "openvic-simulation/utility/Allocator.hpp" #include "openvic-simulation/core/Compare.hpp" +#include "openvic-simulation/core/stl/BasicIterator.hpp" #include "openvic-simulation/core/template/Concepts.hpp" #include "openvic-simulation/core/Typedefs.hpp" +#include "openvic-simulation/utility/Allocator.hpp" -namespace OpenVic { +namespace OpenVic::stl { /** * A Copy-On-Write vector (replicating std::vector) * @@ -97,8 +98,7 @@ namespace OpenVic { swap(other, *this); } else if (!other.empty()) { _data = _allocate_payload(other.size()); - _data->array_end = - uninitialized_move(other._data->array, other._data->array_end, _data->array, alloc); + _data->array_end = uninitialized_move(other._data->array, other._data->array_end, _data->array, alloc); destroy(_data->array, _data->array_end, alloc); _data->array_end = _data->array; } @@ -449,8 +449,7 @@ namespace OpenVic { if constexpr (move_insertable_allocator) { _relocate(_data->array, _data->array_end, new_data->array, alloc); } else { - new_data->array_end = - uninitialized_move(_data->array, _data->array_end, new_data->array, alloc); + new_data->array_end = uninitialized_move(_data->array, _data->array_end, new_data->array, alloc); destroy(_data->array, _data->array_end, alloc); } _deallocate_payload(_data); @@ -1115,37 +1114,36 @@ namespace OpenVic { return std::lexicographical_compare_three_way(x.begin(), x.end(), y.begin(), y.end(), three_way_compare); } - namespace cow { - template T> - T const& read(T& v) { - return v; - } - - template T> - typename T::writer& write(T& v) { - return v.write(); - } - } - static_assert( sizeof(cow_vector) == sizeof(cow_vector::writer), "cow_vector must always be the same size as it's writer" ); } +namespace OpenVic::cow { + template T> + T const& read(T& v) { + return v; + } + + template T> + typename T::writer& write(T& v) { + return v.write(); + } +} + namespace std { template inline void swap( // - typename OpenVic::cow_vector::writer& x, typename OpenVic::cow_vector::writer& y + typename ::OpenVic::stl::cow_vector::writer& x, typename ::OpenVic::stl::cow_vector::writer& y ) { x.swap(y); } template - inline typename OpenVic::cow_vector::size_type erase_if( // - typename OpenVic::cow_vector::writer& cont, Predicate pred + inline typename ::OpenVic::stl::cow_vector::size_type erase_if( // + typename ::OpenVic::stl::cow_vector::writer& cont, Predicate pred ) { - using namespace OpenVic; - typename cow_vector::writer& ucont = cont; + typename ::OpenVic::stl::cow_vector::writer& ucont = cont; const auto orig_size = cont.size(); const auto end = ucont.end(); decltype(end) removed = std::remove_if(ucont.begin(), end, std::ref(pred)); @@ -1158,11 +1156,10 @@ namespace std { } template - inline typename OpenVic::cow_vector::size_type erase( // - typename OpenVic::cow_vector::writer& cont, U const& value + inline typename ::OpenVic::stl::cow_vector::size_type erase( // + typename ::OpenVic::stl::cow_vector::writer& cont, U const& value ) { - using namespace OpenVic; - typename cow_vector::writer& ucont = cont; + typename ::OpenVic::stl::cow_vector::writer& ucont = cont; const auto orig_size = cont.size(); const auto end = ucont.end(); decltype(end) removed = std::remove_if(ucont.begin(), end, [&value](auto it) { diff --git a/src/openvic-simulation/types/FixedVector.hpp b/src/openvic-simulation/core/stl/containers/FixedVector.hpp similarity index 75% rename from src/openvic-simulation/types/FixedVector.hpp rename to src/openvic-simulation/core/stl/containers/FixedVector.hpp index e85c438a9..3d85cadc5 100644 --- a/src/openvic-simulation/types/FixedVector.hpp +++ b/src/openvic-simulation/core/stl/containers/FixedVector.hpp @@ -12,7 +12,7 @@ #include "openvic-simulation/core/Typedefs.hpp" #include "openvic-simulation/types/ConstructorTags.hpp" -namespace OpenVic::_detail { +namespace OpenVic::stl { // fixed capacity vector // supports immovable + uncopyable value types template > @@ -23,6 +23,7 @@ namespace OpenVic::_detail { using reference = T&; using size_type = SizeT; using value_type = T; + using allocator_type = Allocator; private: using allocator_traits = std::allocator_traits; size_type _max_size; @@ -45,24 +46,30 @@ namespace OpenVic::_detail { constexpr bool empty() const { return _size == size_type{}; } constexpr explicit FixedVector(const create_empty_t t) noexcept : FixedVector(t, size_type{}) {} + constexpr explicit FixedVector(const create_empty_t, const size_type capacity, std::type_identity_t const& alloc) + : _max_size(capacity), + _size(size_type{}), + _allocator(alloc), + _data_start_ptr(allocate(_allocator, capacity)) {} + /** * @brief Creates an uninitialised vector with fixed capacity */ constexpr explicit FixedVector(const create_empty_t, const size_type capacity) - : _max_size(capacity), - _size(size_type{}), - _allocator(), - _data_start_ptr(allocate(_allocator, capacity)) {} + : FixedVector(create_empty, capacity, Allocator()) {} constexpr FixedVector(const size_type size, T const& value_for_all_indices) + : FixedVector(size, value_for_all_indices, Allocator()) {} + + constexpr FixedVector(const size_type size, T const& value_for_all_indices, std::type_identity_t const& alloc) : _max_size(size), _size(size), - _allocator(), + _allocator(alloc), _data_start_ptr(allocate(_allocator, size)) { std::fill(_data_start_ptr, _data_start_ptr + get_index_as_size_t(size), value_for_all_indices); } - - constexpr explicit FixedVector(const generate_values_t, const size_type capacity) + + constexpr FixedVector(const generate_values_t, const size_type capacity, std::type_identity_t const& alloc) requires ( std::constructible_from || std::is_default_constructible_v @@ -77,6 +84,12 @@ namespace OpenVic::_detail { } ) {} + constexpr FixedVector(const generate_values_t, const size_type capacity) + requires ( + std::constructible_from + || std::is_default_constructible_v + ) : FixedVector(generate_values, capacity, Allocator()) {} + //Generator (size_type i) -> U (where T is constructable from U) template // The generator must NOT return a tuple @@ -84,9 +97,19 @@ namespace OpenVic::_detail { // The type must be constructible from the generator's single return value && std::constructible_from()(std::declval()))> constexpr FixedVector(const size_type size, GeneratorTemplateType&& generator) + : FixedVector(size, std::forward(generator), Allocator()) { + } + + //Generator (size_type i) -> U (where T is constructable from U) + template + // The generator must NOT return a tuple + requires (!specialization_of>, std::tuple>) + // The type must be constructible from the generator's single return value + && std::constructible_from()(std::declval()))> + constexpr FixedVector(const size_type size, GeneratorTemplateType&& generator, std::type_identity_t const& alloc) : _max_size(size), _size(size_type{}), - _allocator(), + _allocator(alloc), _data_start_ptr(allocate(_allocator, size)) { for (size_type i {}; i < size; ++i) { allocator_traits::construct( @@ -114,9 +137,28 @@ namespace OpenVic::_detail { }; } constexpr FixedVector(const size_type size, GeneratorTemplateType&& generator) + : FixedVector(size, std::forward(generator), Allocator()) { + } + + //Generator (size_type i) -> std::tuple (where T is constructable from Args) + template + // The generator must return a tuple + requires specialization_of>, std::tuple> + // The tuple must be constructible into a T + && requires(GeneratorTemplateType&& generator) { + { + std::apply( + [](auto&&... args) { + T obj{std::forward(args)...}; + }, + generator(std::declval()) + ) + }; + } + constexpr FixedVector(const size_type size, GeneratorTemplateType&& generator, std::type_identity_t const& alloc) : _max_size(size), _size(size_type{}), - _allocator(), + _allocator(alloc), _data_start_ptr(allocate(_allocator, size)) { for (size_type i {}; i < size; ++i) { std::apply( @@ -156,7 +198,7 @@ namespace OpenVic::_detail { clear(); allocator_traits::deallocate(_allocator, _data_start_ptr, get_index_as_size_t(_max_size)); } - + using iterator = T*; using const_iterator = T const*; @@ -167,7 +209,7 @@ namespace OpenVic::_detail { constexpr iterator end() { return begin() + get_index_as_size_t(_size); } constexpr const_iterator end() const { return begin() + get_index_as_size_t(_size); } constexpr const_iterator cend() const { return cbegin() + get_index_as_size_t(_size); } - + using reverse_iterator = std::reverse_iterator; using const_reverse_iterator = std::reverse_iterator; @@ -239,14 +281,9 @@ namespace OpenVic::_detail { } _size = {}; } + + constexpr allocator_type get_allocator() const { + return _allocator; + } }; } - -#include - -#include "openvic-simulation/core/memory/MemoryTracker.hpp" - -namespace OpenVic::memory { - template - using FixedVector = _detail::FixedVector>>; -} \ No newline at end of file diff --git a/src/openvic-simulation/types/RingBuffer.hpp b/src/openvic-simulation/core/stl/containers/RingBuffer.hpp similarity index 99% rename from src/openvic-simulation/types/RingBuffer.hpp rename to src/openvic-simulation/core/stl/containers/RingBuffer.hpp index dee68b6a0..aa635d4a4 100644 --- a/src/openvic-simulation/types/RingBuffer.hpp +++ b/src/openvic-simulation/core/stl/containers/RingBuffer.hpp @@ -20,8 +20,7 @@ #include "openvic-simulation/core/Assert.hpp" #include "openvic-simulation/core/Typedefs.hpp" -namespace OpenVic { - +namespace OpenVic::stl { /// RingBuffer datatype /// Generally most of the interface should be a drop-in replacement for std::vector template> @@ -799,6 +798,6 @@ namespace OpenVic { // The allocator is used to allocate memory, and to construct and destroy // elements. - [[no_unique_address]] allocator_type _allocator {}; + OV_NO_UNIQUE_ADDRESS allocator_type _allocator {}; }; } diff --git a/src/openvic-simulation/types/StackString.hpp b/src/openvic-simulation/core/stl/containers/StackString.hpp similarity index 100% rename from src/openvic-simulation/types/StackString.hpp rename to src/openvic-simulation/core/stl/containers/StackString.hpp diff --git a/src/openvic-simulation/types/TypedSpan.hpp b/src/openvic-simulation/core/stl/containers/TypedSpan.hpp similarity index 92% rename from src/openvic-simulation/types/TypedSpan.hpp rename to src/openvic-simulation/core/stl/containers/TypedSpan.hpp index 446754950..ec76bc582 100644 --- a/src/openvic-simulation/types/TypedSpan.hpp +++ b/src/openvic-simulation/core/stl/containers/TypedSpan.hpp @@ -4,6 +4,7 @@ #include +#include "openvic-simulation/core/Assert.hpp" #include "openvic-simulation/core/portable/ForwardableSpan.hpp" #include "openvic-simulation/core/template/Concepts.hpp" @@ -29,7 +30,7 @@ namespace OpenVic { } [[nodiscard]] constexpr forwardable_span::reference operator[](const IndexType index) const { - assert(index < size()); + OV_HARDEN_ASSERT_ACCESS(index, "operator[]"); return forwardable_span::operator[](static_cast(type_safe::get(index))); } diff --git a/src/openvic-simulation/core/string/StringLiteral.hpp b/src/openvic-simulation/core/string/StringLiteral.hpp index 557fdeb62..0935e3d39 100644 --- a/src/openvic-simulation/core/string/StringLiteral.hpp +++ b/src/openvic-simulation/core/string/StringLiteral.hpp @@ -6,7 +6,7 @@ #include #include -#include "openvic-simulation/types/BasicIterator.hpp" +#include "openvic-simulation/core/stl/BasicIterator.hpp" namespace OpenVic { template diff --git a/src/openvic-simulation/country/CountryDefinition.cpp b/src/openvic-simulation/country/CountryDefinition.cpp index f22260228..7c39e6148 100644 --- a/src/openvic-simulation/country/CountryDefinition.cpp +++ b/src/openvic-simulation/country/CountryDefinition.cpp @@ -4,6 +4,7 @@ #include +#include "openvic-simulation/core/memory/FixedVector.hpp" #include "openvic-simulation/dataloader/Dataloader.hpp" #include "openvic-simulation/dataloader/NodeTools.hpp" #include "openvic-simulation/DefinitionManager.hpp" @@ -12,7 +13,6 @@ #include "openvic-simulation/politics/PartyPolicy.hpp" #include "openvic-simulation/population/Culture.hpp" #include "openvic-simulation/types/Colour.hpp" -#include "openvic-simulation/types/FixedVector.hpp" #include "openvic-simulation/types/IdentifierRegistry.hpp" #include "openvic-simulation/types/TypedIndices.hpp" #include "openvic-simulation/utility/Logger.hpp" diff --git a/src/openvic-simulation/country/CountryInstance.hpp b/src/openvic-simulation/country/CountryInstance.hpp index c9404f043..cfe3c3b0a 100644 --- a/src/openvic-simulation/country/CountryInstance.hpp +++ b/src/openvic-simulation/country/CountryInstance.hpp @@ -7,6 +7,7 @@ #include "openvic-simulation/core/memory/SmartPtr.hpp" #include "openvic-simulation/core/memory/Vector.hpp" +#include "openvic-simulation/core/stl/containers/TypedSpan.hpp" #include "openvic-simulation/core/thread/SpinMutex.hpp" #include "openvic-simulation/diplomacy/CountryRelation.hpp" #include "openvic-simulation/economy/BuildingLevel.hpp" @@ -25,7 +26,6 @@ #include "openvic-simulation/types/HasIndex.hpp" #include "openvic-simulation/types/OrderedContainers.hpp" #include "openvic-simulation/types/TypedIndices.hpp" -#include "openvic-simulation/types/TypedSpan.hpp" #include "openvic-simulation/types/UnitBranchType.hpp" #include "openvic-simulation/types/UnitVariant.hpp" #include "openvic-simulation/types/ValueHistory.hpp" diff --git a/src/openvic-simulation/country/CountryInstanceManager.hpp b/src/openvic-simulation/country/CountryInstanceManager.hpp index 3a589642b..f611c51b9 100644 --- a/src/openvic-simulation/country/CountryInstanceManager.hpp +++ b/src/openvic-simulation/country/CountryInstanceManager.hpp @@ -3,11 +3,11 @@ #include #include +#include "openvic-simulation/core/memory/FixedVector.hpp" #include "openvic-simulation/core/memory/Vector.hpp" #include "openvic-simulation/country/CountryInstance.hpp" #include "openvic-simulation/country/SharedCountryValues.hpp" #include "openvic-simulation/types/Date.hpp" -#include "openvic-simulation/types/FixedVector.hpp" #include "openvic-simulation/types/TypedIndices.hpp" #include "openvic-simulation/utility/Getters.hpp" @@ -76,4 +76,4 @@ namespace OpenVic { void country_manager_tick_before_map(); void country_manager_tick_after_map(); }; -} \ No newline at end of file +} diff --git a/src/openvic-simulation/country/CountryParty.hpp b/src/openvic-simulation/country/CountryParty.hpp index ad73bc55d..2dc2f9536 100644 --- a/src/openvic-simulation/country/CountryParty.hpp +++ b/src/openvic-simulation/country/CountryParty.hpp @@ -1,8 +1,8 @@ #pragma once +#include "openvic-simulation/core/memory/FixedVector.hpp" #include "openvic-simulation/types/Date.hpp" #include "openvic-simulation/types/HasIdentifier.hpp" -#include "openvic-simulation/types/FixedVector.hpp" #include "openvic-simulation/types/TypedIndices.hpp" namespace OpenVic { @@ -28,4 +28,4 @@ namespace OpenVic { ); CountryParty(CountryParty&&) = default; }; -} \ No newline at end of file +} diff --git a/src/openvic-simulation/dataloader/NodeTools.hpp b/src/openvic-simulation/dataloader/NodeTools.hpp index 343be7659..e075dd7ef 100644 --- a/src/openvic-simulation/dataloader/NodeTools.hpp +++ b/src/openvic-simulation/dataloader/NodeTools.hpp @@ -20,6 +20,7 @@ #include "openvic-simulation/core/FormatValidate.hpp" #include "openvic-simulation/core/memory/String.hpp" #include "openvic-simulation/core/memory/Vector.hpp" +#include "openvic-simulation/core/stl/MutableIterator.hpp" #include "openvic-simulation/core/string/Utility.hpp" #include "openvic-simulation/core/template/Concepts.hpp" #include "openvic-simulation/core/ui/TextFormat.hpp" @@ -28,7 +29,6 @@ #include "openvic-simulation/types/IndexedFlatMap.hpp" #include "openvic-simulation/types/OrderedContainers.hpp" #include "openvic-simulation/types/Vector.hpp" -#include "openvic-simulation/utility/TslHelper.hpp" #define MOV(...) static_cast&&>(__VA_ARGS__) #define FWD(...) static_cast(__VA_ARGS__) diff --git a/src/openvic-simulation/economy/BuildingType.hpp b/src/openvic-simulation/economy/BuildingType.hpp index 708985636..f4bb8a689 100644 --- a/src/openvic-simulation/economy/BuildingType.hpp +++ b/src/openvic-simulation/economy/BuildingType.hpp @@ -5,6 +5,7 @@ #include "openvic-simulation/core/memory/Vector.hpp" #include "openvic-simulation/modifier/Modifier.hpp" +#include "openvic-simulation/core/stl/containers/TypedSpan.hpp" #include "openvic-simulation/economy/BuildingLevel.hpp" #include "openvic-simulation/economy/BuildingRestrictionCategory.hpp" #include "openvic-simulation/types/Date.hpp" @@ -12,7 +13,6 @@ #include "openvic-simulation/types/IdentifierRegistry.hpp" #include "openvic-simulation/types/fixed_point/FixedPoint.hpp" #include "openvic-simulation/types/TypedIndices.hpp" -#include "openvic-simulation/types/TypedSpan.hpp" namespace OpenVic { struct BuildingTypeManager; diff --git a/src/openvic-simulation/economy/GoodDefinition.cpp b/src/openvic-simulation/economy/GoodDefinition.cpp index 1d733593c..fdb8c6f34 100644 --- a/src/openvic-simulation/economy/GoodDefinition.cpp +++ b/src/openvic-simulation/economy/GoodDefinition.cpp @@ -1,8 +1,8 @@ #include "GoodDefinition.hpp" #include "openvic-simulation/modifier/ModifierManager.hpp" +#include "openvic-simulation/core/memory/FixedVector.hpp" #include "openvic-simulation/core/string/Utility.hpp" -#include "openvic-simulation/types/FixedVector.hpp" using namespace OpenVic; using namespace OpenVic::NodeTools; diff --git a/src/openvic-simulation/economy/production/ArtisanalProducer.hpp b/src/openvic-simulation/economy/production/ArtisanalProducer.hpp index b360073f4..fe7f75dc3 100644 --- a/src/openvic-simulation/economy/production/ArtisanalProducer.hpp +++ b/src/openvic-simulation/economy/production/ArtisanalProducer.hpp @@ -5,11 +5,11 @@ #include "openvic-simulation/core/memory/Vector.hpp" #include "openvic-simulation/types/IndexedFlatMap.hpp" +#include "openvic-simulation/core/stl/containers/TypedSpan.hpp" #include "openvic-simulation/types/fixed_point/FixedPoint.hpp" #include "openvic-simulation/types/fixed_point/FixedPointMap.hpp" #include "openvic-simulation/types/fixed_point/Fraction.hpp" #include "openvic-simulation/types/TypedIndices.hpp" -#include "openvic-simulation/types/TypedSpan.hpp" #include "openvic-simulation/utility/Getters.hpp" namespace OpenVic { diff --git a/src/openvic-simulation/economy/production/ProductionType.hpp b/src/openvic-simulation/economy/production/ProductionType.hpp index ba95c5854..361dd0fa6 100644 --- a/src/openvic-simulation/economy/production/ProductionType.hpp +++ b/src/openvic-simulation/economy/production/ProductionType.hpp @@ -3,6 +3,7 @@ #include #include "openvic-simulation/core/memory/Vector.hpp" +#include "openvic-simulation/core/stl/containers/TypedSpan.hpp" #include "openvic-simulation/population/PopSize.hpp" #include "openvic-simulation/scripts/ConditionScript.hpp" #include "openvic-simulation/types/IdentifierRegistry.hpp" @@ -10,7 +11,6 @@ #include "openvic-simulation/types/fixed_point/FixedPoint.hpp" #include "openvic-simulation/types/PopSprite.hpp" #include "openvic-simulation/types/TypedIndices.hpp" -#include "openvic-simulation/types/TypedSpan.hpp" namespace OpenVic { struct PopType; diff --git a/src/openvic-simulation/economy/production/ResourceGatheringOperation.hpp b/src/openvic-simulation/economy/production/ResourceGatheringOperation.hpp index c3f648099..985a618f4 100644 --- a/src/openvic-simulation/economy/production/ResourceGatheringOperation.hpp +++ b/src/openvic-simulation/economy/production/ResourceGatheringOperation.hpp @@ -7,7 +7,7 @@ #include "openvic-simulation/types/fixed_point/FixedPoint.hpp" #include "openvic-simulation/population/PopSize.hpp" #include "openvic-simulation/population/PopSum.hpp" -#include "openvic-simulation/types/FixedVector.hpp" +#include "openvic-simulation/core/memory/FixedVector.hpp" #include "openvic-simulation/types/TypedIndices.hpp" #include "openvic-simulation/utility/Getters.hpp" diff --git a/src/openvic-simulation/economy/trading/GoodMarket.hpp b/src/openvic-simulation/economy/trading/GoodMarket.hpp index 41be0dcbe..f09b83282 100644 --- a/src/openvic-simulation/economy/trading/GoodMarket.hpp +++ b/src/openvic-simulation/economy/trading/GoodMarket.hpp @@ -3,12 +3,12 @@ #include #include "openvic-simulation/core/memory/Vector.hpp" +#include "openvic-simulation/core/stl/containers/TypedSpan.hpp" #include "openvic-simulation/core/thread/SpinMutex.hpp" #include "openvic-simulation/economy/trading/BuyUpToOrder.hpp" #include "openvic-simulation/economy/trading/MarketSellOrder.hpp" #include "openvic-simulation/types/fixed_point/FixedPoint.hpp" #include "openvic-simulation/types/TypedIndices.hpp" -#include "openvic-simulation/types/TypedSpan.hpp" #include "openvic-simulation/types/ValueHistory.hpp" #include "openvic-simulation/utility/Getters.hpp" diff --git a/src/openvic-simulation/history/ProvinceHistory.hpp b/src/openvic-simulation/history/ProvinceHistory.hpp index cdedee948..2d5d09294 100644 --- a/src/openvic-simulation/history/ProvinceHistory.hpp +++ b/src/openvic-simulation/history/ProvinceHistory.hpp @@ -2,7 +2,9 @@ #include +#include "openvic-simulation/core/memory/FixedVector.hpp" #include "openvic-simulation/core/memory/SmartPtr.hpp" +#include "openvic-simulation/core/stl/containers/TypedSpan.hpp" #include "openvic-simulation/economy/BuildingType.hpp" #include "openvic-simulation/history/HistoryMap.hpp" #include "openvic-simulation/population/Pop.hpp" @@ -10,9 +12,7 @@ #include "openvic-simulation/types/ColonyStatus.hpp" #include "openvic-simulation/types/Date.hpp" #include "openvic-simulation/types/fixed_point/FixedPointMap.hpp" -#include "openvic-simulation/types/FixedVector.hpp" #include "openvic-simulation/types/OrderedContainers.hpp" -#include "openvic-simulation/types/TypedSpan.hpp" #include "openvic-simulation/types/TypedIndices.hpp" #include "openvic-simulation/map/LifeRating.hpp" #include "openvic-simulation/utility/Getters.hpp" diff --git a/src/openvic-simulation/map/MapDefinition.cpp b/src/openvic-simulation/map/MapDefinition.cpp index 8e021edce..d13fe0059 100644 --- a/src/openvic-simulation/map/MapDefinition.cpp +++ b/src/openvic-simulation/map/MapDefinition.cpp @@ -18,6 +18,7 @@ #include "openvic-simulation/core/FormatValidate.hpp" #include "openvic-simulation/core/io/BMP.hpp" +#include "openvic-simulation/core/stl/containers/TypedSpan.hpp" #include "openvic-simulation/core/string/CharConv.hpp" #include "openvic-simulation/core/Typedefs.hpp" #include "openvic-simulation/dataloader/NodeTools.hpp" diff --git a/src/openvic-simulation/map/ProvinceInstance.hpp b/src/openvic-simulation/map/ProvinceInstance.hpp index 7e6038a60..68b252a35 100644 --- a/src/openvic-simulation/map/ProvinceInstance.hpp +++ b/src/openvic-simulation/map/ProvinceInstance.hpp @@ -3,8 +3,10 @@ #include #include "openvic-simulation/core/memory/Colony.hpp" +#include "openvic-simulation/core/memory/FixedVector.hpp" #include "openvic-simulation/core/memory/Vector.hpp" #include "openvic-simulation/core/portable/ForwardableSpan.hpp" +#include "openvic-simulation/core/stl/containers/TypedSpan.hpp" #include "openvic-simulation/economy/BuildingInstance.hpp" #include "openvic-simulation/economy/production/ResourceGatheringOperation.hpp" #include "openvic-simulation/map/LifeRating.hpp" @@ -18,9 +20,7 @@ #include "openvic-simulation/types/HasIdentifier.hpp" #include "openvic-simulation/types/HasIndex.hpp" #include "openvic-simulation/types/OrderedContainers.hpp" -#include "openvic-simulation/types/FixedVector.hpp" #include "openvic-simulation/types/TypedIndices.hpp" -#include "openvic-simulation/types/TypedSpan.hpp" #include "openvic-simulation/types/UnitBranchType.hpp" namespace OpenVic { diff --git a/src/openvic-simulation/map/State.hpp b/src/openvic-simulation/map/State.hpp index 0c3a7409e..14573c7a9 100644 --- a/src/openvic-simulation/map/State.hpp +++ b/src/openvic-simulation/map/State.hpp @@ -5,12 +5,12 @@ #include #include "openvic-simulation/core/memory/Colony.hpp" +#include "openvic-simulation/core/memory/FixedVector.hpp" #include "openvic-simulation/core/memory/Vector.hpp" #include "openvic-simulation/core/portable/ForwardableSpan.hpp" #include "openvic-simulation/population/PopsAggregate.hpp" #include "openvic-simulation/types/ColonyStatus.hpp" #include "openvic-simulation/types/fixed_point/FixedPoint.hpp" -#include "openvic-simulation/types/FixedVector.hpp" #include "openvic-simulation/types/TypedIndices.hpp" #include "openvic-simulation/utility/Getters.hpp" diff --git a/src/openvic-simulation/map/TerrainType.cpp b/src/openvic-simulation/map/TerrainType.cpp index 329a40ffa..5153a9df9 100644 --- a/src/openvic-simulation/map/TerrainType.cpp +++ b/src/openvic-simulation/map/TerrainType.cpp @@ -3,10 +3,10 @@ #include #include "openvic-simulation/core/FormatValidate.hpp" +#include "openvic-simulation/core/memory/FixedVector.hpp" #include "openvic-simulation/modifier/ModifierManager.hpp" #include "openvic-simulation/types/Colour.hpp" #include "openvic-simulation/types/HasIdentifier.hpp" -#include "openvic-simulation/types/FixedVector.hpp" using namespace OpenVic; using namespace OpenVic::NodeTools; diff --git a/src/openvic-simulation/military/UnitType.cpp b/src/openvic-simulation/military/UnitType.cpp index 1225cc763..924d3dfdf 100644 --- a/src/openvic-simulation/military/UnitType.cpp +++ b/src/openvic-simulation/military/UnitType.cpp @@ -1,11 +1,11 @@ #include "UnitType.hpp" +#include "openvic-simulation/core/memory/FixedVector.hpp" #include "openvic-simulation/country/CountryInstance.hpp" #include "openvic-simulation/dataloader/NodeTools.hpp" #include "openvic-simulation/map/TerrainType.hpp" #include "openvic-simulation/modifier/ModifierManager.hpp" #include "openvic-simulation/modifier/ModifierEffectCache.hpp" -#include "openvic-simulation/types/FixedVector.hpp" #include "openvic-simulation/types/TypedIndices.hpp" #include "openvic-simulation/types/UnitBranchType.hpp" diff --git a/src/openvic-simulation/modifier/ModifierEffectCache.hpp b/src/openvic-simulation/modifier/ModifierEffectCache.hpp index 89a874d4b..c055cf958 100644 --- a/src/openvic-simulation/modifier/ModifierEffectCache.hpp +++ b/src/openvic-simulation/modifier/ModifierEffectCache.hpp @@ -1,6 +1,6 @@ #pragma once -#include "openvic-simulation/types/FixedVector.hpp" +#include "openvic-simulation/core/memory/FixedVector.hpp" #include "openvic-simulation/types/TypedIndices.hpp" #include "openvic-simulation/types/UnitBranchType.hpp" #include "openvic-simulation/utility/Getters.hpp" diff --git a/src/openvic-simulation/modifier/ModifierValue.cpp b/src/openvic-simulation/modifier/ModifierValue.cpp index a50fea1ac..2882edd41 100644 --- a/src/openvic-simulation/modifier/ModifierValue.cpp +++ b/src/openvic-simulation/modifier/ModifierValue.cpp @@ -1,6 +1,6 @@ #include "ModifierValue.hpp" -#include "openvic-simulation/utility/TslHelper.hpp" +#include "openvic-simulation/core/stl/MutableIterator.hpp" using namespace OpenVic; diff --git a/src/openvic-simulation/population/Pop.cpp b/src/openvic-simulation/population/Pop.cpp index d49673f7e..f3c7f4617 100644 --- a/src/openvic-simulation/population/Pop.cpp +++ b/src/openvic-simulation/population/Pop.cpp @@ -10,8 +10,9 @@ #include -#include "openvic-simulation/core/Typedefs.hpp" #include "openvic-simulation/core/error/ErrorMacros.hpp" +#include "openvic-simulation/core/stl/containers/TypedSpan.hpp" +#include "openvic-simulation/core/Typedefs.hpp" #include "openvic-simulation/country/CountryDefinition.hpp" #include "openvic-simulation/country/CountryInstance.hpp" #include "openvic-simulation/country/CountryParty.hpp" @@ -41,7 +42,6 @@ #include "openvic-simulation/types/fixed_point/Math.hpp" #include "openvic-simulation/types/OrderedContainers.hpp" #include "openvic-simulation/types/TypedIndices.hpp" -#include "openvic-simulation/types/TypedSpan.hpp" #include "openvic-simulation/utility/Logger.hpp" #include "PopDeps.hpp" diff --git a/src/openvic-simulation/population/PopType.cpp b/src/openvic-simulation/population/PopType.cpp index 12a463db0..f15e663d2 100644 --- a/src/openvic-simulation/population/PopType.cpp +++ b/src/openvic-simulation/population/PopType.cpp @@ -2,9 +2,9 @@ #include +#include "openvic-simulation/core/stl/MutableIterator.hpp" #include "openvic-simulation/country/CountryDefinition.hpp" #include "openvic-simulation/map/ProvinceInstance.hpp" -#include "openvic-simulation/utility/TslHelper.hpp" using namespace OpenVic; diff --git a/src/openvic-simulation/population/PopValuesFromProvince.hpp b/src/openvic-simulation/population/PopValuesFromProvince.hpp index 84150bdc1..60820c63d 100644 --- a/src/openvic-simulation/population/PopValuesFromProvince.hpp +++ b/src/openvic-simulation/population/PopValuesFromProvince.hpp @@ -1,7 +1,7 @@ #pragma once +#include "openvic-simulation/core/memory/FixedVector.hpp" #include "openvic-simulation/core/memory/Vector.hpp" -#include "openvic-simulation/types/FixedVector.hpp" #include "openvic-simulation/types/fixed_point/FixedPoint.hpp" #include "openvic-simulation/types/TypedIndices.hpp" #include "openvic-simulation/utility/Getters.hpp" diff --git a/src/openvic-simulation/population/PopsAggregate.hpp b/src/openvic-simulation/population/PopsAggregate.hpp index 4c00dcc1e..e0d028b33 100644 --- a/src/openvic-simulation/population/PopsAggregate.hpp +++ b/src/openvic-simulation/population/PopsAggregate.hpp @@ -2,10 +2,10 @@ #include +#include "openvic-simulation/core/memory/FixedVector.hpp" #include "openvic-simulation/population/PopSum.hpp" #include "openvic-simulation/types/fixed_point/FixedPoint.hpp" #include "openvic-simulation/types/fixed_point/FixedPointMap.hpp" -#include "openvic-simulation/types/FixedVector.hpp" #include "openvic-simulation/types/TypedIndices.hpp" #include "openvic-simulation/types/OrderedContainers.hpp" #include "openvic-simulation/utility/Getters.hpp" diff --git a/src/openvic-simulation/research/Technology.cpp b/src/openvic-simulation/research/Technology.cpp index 628d4894a..12bc8fd91 100644 --- a/src/openvic-simulation/research/Technology.cpp +++ b/src/openvic-simulation/research/Technology.cpp @@ -1,9 +1,9 @@ #include "Technology.hpp" +#include "openvic-simulation/core/memory/FixedVector.hpp" #include "openvic-simulation/economy/BuildingType.hpp" #include "openvic-simulation/military/UnitType.hpp" #include "openvic-simulation/modifier/ModifierManager.hpp" -#include "openvic-simulation/types/FixedVector.hpp" #include "openvic-simulation/types/TypedIndices.hpp" using namespace OpenVic; diff --git a/src/openvic-simulation/types/Colour.hpp b/src/openvic-simulation/types/Colour.hpp index beb4a224c..5198c5708 100644 --- a/src/openvic-simulation/types/Colour.hpp +++ b/src/openvic-simulation/types/Colour.hpp @@ -25,10 +25,10 @@ #include +#include "openvic-simulation/core/stl/containers/StackString.hpp" #include "openvic-simulation/core/string/CharConv.hpp" #include "openvic-simulation/core/template/Concepts.hpp" #include "openvic-simulation/core/Typedefs.hpp" -#include "openvic-simulation/types/StackString.hpp" namespace OpenVic { template diff --git a/src/openvic-simulation/types/Date.hpp b/src/openvic-simulation/types/Date.hpp index 93f4ef818..da738ffc0 100644 --- a/src/openvic-simulation/types/Date.hpp +++ b/src/openvic-simulation/types/Date.hpp @@ -19,9 +19,9 @@ #include "openvic-simulation/core/Hash.hpp" #include "openvic-simulation/core/memory/Formatting.hpp" #include "openvic-simulation/core/memory/String.hpp" +#include "openvic-simulation/core/stl/containers/StackString.hpp" #include "openvic-simulation/core/string/CharConv.hpp" #include "openvic-simulation/core/Typedefs.hpp" -#include "openvic-simulation/types/StackString.hpp" #include "openvic-simulation/utility/Getters.hpp" namespace OpenVic { diff --git a/src/openvic-simulation/types/IndexedFlatMap.hpp b/src/openvic-simulation/types/IndexedFlatMap.hpp index 7cb3bcd62..09a3c89c9 100644 --- a/src/openvic-simulation/types/IndexedFlatMap.hpp +++ b/src/openvic-simulation/types/IndexedFlatMap.hpp @@ -9,13 +9,11 @@ #include -#include - +#include "openvic-simulation/core/memory/FixedVector.hpp" #include "openvic-simulation/core/memory/Vector.hpp" #include "openvic-simulation/core/portable/ForwardableSpan.hpp" #include "openvic-simulation/core/template/Concepts.hpp" #include "openvic-simulation/types/ConstructorTags.hpp" -#include "openvic-simulation/types/FixedVector.hpp" #include "openvic-simulation/utility/Getters.hpp" // IWYU pragma: keep for _get_property #include "openvic-simulation/utility/Logger.hpp" diff --git a/src/openvic-simulation/types/Signal.hpp b/src/openvic-simulation/types/Signal.hpp index c7bbb7709..323320e5e 100644 --- a/src/openvic-simulation/types/Signal.hpp +++ b/src/openvic-simulation/types/Signal.hpp @@ -12,9 +12,9 @@ #include #include "openvic-simulation/core/memory/Vector.hpp" +#include "openvic-simulation/core/stl/containers/CowVector.hpp" #include "openvic-simulation/core/thread/NullMutex.hpp" #include "openvic-simulation/core/Typedefs.hpp" -#include "openvic-simulation/types/CowVector.hpp" // For OpenVic::_detail::signal::make_shared #ifdef DEBUG_ENABLED @@ -803,12 +803,12 @@ namespace OpenVic::_detail::signal { template using cow_type = std::conditional_t< - is_thread_safe::value, cow_vector, + is_thread_safe::value, ::OpenVic::stl::cow_vector, list_type>; template using cow_copy_type = std::conditional_t< - is_thread_safe::value, cow_vector, + is_thread_safe::value, ::OpenVic::stl::cow_vector, list_type const&>; public: diff --git a/src/openvic-simulation/types/ValueHistory.hpp b/src/openvic-simulation/types/ValueHistory.hpp index b931d4e94..9b56ad998 100644 --- a/src/openvic-simulation/types/ValueHistory.hpp +++ b/src/openvic-simulation/types/ValueHistory.hpp @@ -2,13 +2,13 @@ #include -#include "openvic-simulation/types/RingBuffer.hpp" +#include "openvic-simulation/core/stl/containers/RingBuffer.hpp" namespace OpenVic { template> - struct ValueHistory : private RingBuffer { - using base_type = RingBuffer; + struct ValueHistory : private ::OpenVic::stl::RingBuffer { + using base_type = ::OpenVic::stl::RingBuffer; using typename base_type::allocator_type; using typename base_type::size_type; diff --git a/src/openvic-simulation/types/Vector.hpp b/src/openvic-simulation/types/Vector.hpp index bda83eb88..f0b19d16f 100644 --- a/src/openvic-simulation/types/Vector.hpp +++ b/src/openvic-simulation/types/Vector.hpp @@ -6,9 +6,9 @@ #include #include "openvic-simulation/core/Math.hpp" // IWYU pragma: keep +#include "openvic-simulation/core/stl/BasicIterator.hpp" // IWYU pragma: keep #include "openvic-simulation/core/template/Concepts.hpp" // IWYU pragma: keep #include "openvic-simulation/core/Typedefs.hpp" // IWYU pragma: keep -#include "openvic-simulation/types/BasicIterator.hpp" // IWYU pragma: keep #include "openvic-simulation/types/fixed_point/FixedPoint.hpp" #define VEC_TYPE vec2_t diff --git a/src/openvic-simulation/types/fixed_point/String.hpp b/src/openvic-simulation/types/fixed_point/String.hpp index c6340d7d4..81766f04d 100644 --- a/src/openvic-simulation/types/fixed_point/String.hpp +++ b/src/openvic-simulation/types/fixed_point/String.hpp @@ -3,9 +3,9 @@ #include #include "openvic-simulation/core/Math.hpp" +#include "openvic-simulation/core/stl/containers/StackString.hpp" #include "openvic-simulation/core/string/CharConv.hpp" #include "openvic-simulation/types/fixed_point/FixedPoint.hpp" -#include "openvic-simulation/types/StackString.hpp" #include "openvic-simulation/utility/Logger.hpp" namespace OpenVic::fp { diff --git a/src/openvic-simulation/utility/Getters.hpp b/src/openvic-simulation/utility/Getters.hpp index 102916253..36dd97820 100644 --- a/src/openvic-simulation/utility/Getters.hpp +++ b/src/openvic-simulation/utility/Getters.hpp @@ -8,9 +8,9 @@ #include "openvic-simulation/core/memory/String.hpp" #include "openvic-simulation/core/portable/ForwardableSpan.hpp" +#include "openvic-simulation/core/stl/containers/TypedSpan.hpp" #include "openvic-simulation/core/template/Concepts.hpp" #include "openvic-simulation/core/Typedefs.hpp" // IWYU pragma: keep -#include "openvic-simulation/types/TypedSpan.hpp" namespace OpenVic::utility { #if !defined(_MSC_VER) diff --git a/src/openvic-simulation/utility/ThreadPool.cpp b/src/openvic-simulation/utility/ThreadPool.cpp index 605185d35..77c02f9b3 100644 --- a/src/openvic-simulation/utility/ThreadPool.cpp +++ b/src/openvic-simulation/utility/ThreadPool.cpp @@ -5,6 +5,7 @@ #include #include +#include "openvic-simulation/core/stl/containers/TypedSpan.hpp" #include "openvic-simulation/country/CountryInstance.hpp" #include "openvic-simulation/economy/GoodDefinition.hpp" // IWYU pragma: keep for constructor requirement #include "openvic-simulation/economy/GoodInstance.hpp" @@ -12,7 +13,6 @@ #include "openvic-simulation/map/ProvinceInstance.hpp" #include "openvic-simulation/types/fixed_point/FixedPoint.hpp" #include "openvic-simulation/types/TypedIndices.hpp" -#include "openvic-simulation/types/TypedSpan.hpp" using namespace OpenVic; diff --git a/tests/src/types/FixedVector.cpp b/tests/src/core/stl/containers/FixedVector.cpp similarity index 98% rename from tests/src/types/FixedVector.cpp rename to tests/src/core/stl/containers/FixedVector.cpp index c95877c1b..a70413335 100644 --- a/tests/src/types/FixedVector.cpp +++ b/tests/src/core/stl/containers/FixedVector.cpp @@ -1,4 +1,4 @@ -#include "openvic-simulation/types/FixedVector.hpp" +#include "openvic-simulation/core/stl/containers/FixedVector.hpp" #include #include @@ -7,7 +7,7 @@ #include using namespace OpenVic; -using namespace OpenVic::_detail; +using namespace OpenVic::stl; // A simple test type to demonstrate a more complex object. // It has a multi-argument constructor to test emplace_back. @@ -210,7 +210,7 @@ TEST_CASE("FixedVector Destruction, Clear, and Refill","[FixedVector]") { vec.clear(); CHECK(vec.size() == 0); CHECK(DestructionCounter::destructor_count == 2); // All elements should be destructed - + // Test refilling after a clear vec.emplace_back(); CHECK(vec.size() == 1); @@ -219,4 +219,4 @@ TEST_CASE("FixedVector Destruction, Clear, and Refill","[FixedVector]") { // After the scope, the last element should also be destructed CHECK(DestructionCounter::destructor_count == 3); -} \ No newline at end of file +} diff --git a/tests/src/types/RingBuffer.cpp b/tests/src/core/stl/containers/RingBuffer.cpp similarity index 98% rename from tests/src/types/RingBuffer.cpp rename to tests/src/core/stl/containers/RingBuffer.cpp index 9fa4e434a..2dace37e6 100644 --- a/tests/src/types/RingBuffer.cpp +++ b/tests/src/core/stl/containers/RingBuffer.cpp @@ -1,11 +1,11 @@ -#include "openvic-simulation/types/RingBuffer.hpp" +#include "openvic-simulation/core/stl/containers/RingBuffer.hpp" #include "Helper.hpp" // IWYU pragma: keep #include #include #include -using namespace OpenVic; +using namespace OpenVic::stl; using namespace std::string_view_literals; TEST_CASE("RingBuffer", "[RingBuffer]") { diff --git a/tests/src/economy/trading/GoodMarket.cpp b/tests/src/economy/trading/GoodMarket.cpp index 78429864f..169187553 100644 --- a/tests/src/economy/trading/GoodMarket.cpp +++ b/tests/src/economy/trading/GoodMarket.cpp @@ -1,11 +1,13 @@ #include "openvic-simulation/economy/GoodDefinition.hpp" #include "openvic-simulation/economy/trading/GoodMarket.hpp" + #include + +#include "openvic-simulation/core/stl/containers/TypedSpan.hpp" #include "openvic-simulation/misc/GameRulesManager.hpp" #include "openvic-simulation/types/Colour.hpp" #include "openvic-simulation/types/fixed_point/FixedPoint.hpp" #include "openvic-simulation/types/TypedIndices.hpp" -#include "openvic-simulation/types/TypedSpan.hpp" #include #include