[ox/std] Fix Vector for MSVC
This commit is contained in:
		
							
								
								
									
										16
									
								
								deps/ox/src/ox/std/vector.hpp
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										16
									
								
								deps/ox/src/ox/std/vector.hpp
									
									
									
									
										vendored
									
									
								
							@@ -357,13 +357,13 @@ class Vector: detail::VectorAllocator<T, Allocator, SmallVectorSize> {
 | 
				
			|||||||
		[[nodiscard]]
 | 
							[[nodiscard]]
 | 
				
			||||||
		constexpr bool contains(const T&) const noexcept(useNoexcept);
 | 
							constexpr bool contains(const T&) const noexcept(useNoexcept);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		constexpr iterator<> insert(
 | 
							constexpr iterator<T&, T*, false> insert(
 | 
				
			||||||
				std::size_t pos, std::size_t cnt, const T &val) noexcept(useNoexcept);
 | 
									std::size_t pos, std::size_t cnt, const T &val) noexcept(useNoexcept);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		constexpr iterator<> insert(std::size_t pos, const T &val) noexcept(useNoexcept);
 | 
							constexpr iterator<T&, T*, false> insert(std::size_t pos, const T &val) noexcept(useNoexcept);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		template<typename... Args>
 | 
							template<typename... Args>
 | 
				
			||||||
		constexpr iterator<> emplace(std::size_t pos, Args&&... args) noexcept(useNoexcept);
 | 
							constexpr iterator<T&, T*, false> emplace(std::size_t pos, Args&&... args) noexcept(useNoexcept);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		template<typename... Args>
 | 
							template<typename... Args>
 | 
				
			||||||
		constexpr T &emplace_back(Args&&... args) noexcept(useNoexcept);
 | 
							constexpr T &emplace_back(Args&&... args) noexcept(useNoexcept);
 | 
				
			||||||
@@ -377,14 +377,14 @@ class Vector: detail::VectorAllocator<T, Allocator, SmallVectorSize> {
 | 
				
			|||||||
		 * @param pos iterator at the point to remove
 | 
							 * @param pos iterator at the point to remove
 | 
				
			||||||
		 * @return Error if index is out of bounds
 | 
							 * @return Error if index is out of bounds
 | 
				
			||||||
		 */
 | 
							 */
 | 
				
			||||||
		constexpr Result<iterator<>> erase(const iterator<> &pos) noexcept(useNoexcept);
 | 
							constexpr Result<iterator<T&, T*, false>> erase(const iterator<> &pos) noexcept(useNoexcept);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		/**
 | 
							/**
 | 
				
			||||||
		 * Removes an item from the Vector.
 | 
							 * Removes an item from the Vector.
 | 
				
			||||||
		 * @param pos position of item to remove
 | 
							 * @param pos position of item to remove
 | 
				
			||||||
		 * @return Error if index is out of bounds
 | 
							 * @return Error if index is out of bounds
 | 
				
			||||||
		 */
 | 
							 */
 | 
				
			||||||
		constexpr Result<iterator<>> erase(std::size_t pos) noexcept(useNoexcept);
 | 
							constexpr Result<iterator<T&, T*, false>> erase(std::size_t pos) noexcept(useNoexcept);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		/**
 | 
							/**
 | 
				
			||||||
		 * Moves the last item in the Vector to position pos and decrements the
 | 
							 * Moves the last item in the Vector to position pos and decrements the
 | 
				
			||||||
@@ -595,7 +595,7 @@ constexpr bool Vector<T, SmallVectorSize, Allocator>::contains(const T &v) const
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
template<typename T, std::size_t SmallVectorSize, typename Allocator>
 | 
					template<typename T, std::size_t SmallVectorSize, typename Allocator>
 | 
				
			||||||
constexpr typename Vector<T, SmallVectorSize, Allocator>::template iterator<>
 | 
					constexpr typename Vector<T, SmallVectorSize, Allocator>::template iterator<T&, T*, false>
 | 
				
			||||||
Vector<T, SmallVectorSize, Allocator>::insert(
 | 
					Vector<T, SmallVectorSize, Allocator>::insert(
 | 
				
			||||||
		std::size_t pos, std::size_t cnt, const T &val) noexcept(useNoexcept) {
 | 
							std::size_t pos, std::size_t cnt, const T &val) noexcept(useNoexcept) {
 | 
				
			||||||
	if (m_size + cnt > m_cap) {
 | 
						if (m_size + cnt > m_cap) {
 | 
				
			||||||
@@ -624,7 +624,7 @@ Vector<T, SmallVectorSize, Allocator>::insert(
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
template<typename T, std::size_t SmallVectorSize, typename Allocator>
 | 
					template<typename T, std::size_t SmallVectorSize, typename Allocator>
 | 
				
			||||||
constexpr typename Vector<T, SmallVectorSize, Allocator>::template iterator<>
 | 
					constexpr typename Vector<T, SmallVectorSize, Allocator>::template iterator<T&, T*, false>
 | 
				
			||||||
Vector<T, SmallVectorSize, Allocator>::insert(std::size_t pos, const T &val) noexcept(useNoexcept) {
 | 
					Vector<T, SmallVectorSize, Allocator>::insert(std::size_t pos, const T &val) noexcept(useNoexcept) {
 | 
				
			||||||
	if (m_size == m_cap) {
 | 
						if (m_size == m_cap) {
 | 
				
			||||||
		reserveInsert(m_cap ? m_cap * 2 : initialCap, pos);
 | 
							reserveInsert(m_cap ? m_cap * 2 : initialCap, pos);
 | 
				
			||||||
@@ -649,7 +649,7 @@ Vector<T, SmallVectorSize, Allocator>::insert(std::size_t pos, const T &val) noe
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
template<typename T, std::size_t SmallVectorSize, typename Allocator>
 | 
					template<typename T, std::size_t SmallVectorSize, typename Allocator>
 | 
				
			||||||
template<typename... Args>
 | 
					template<typename... Args>
 | 
				
			||||||
constexpr typename Vector<T, SmallVectorSize, Allocator>::template iterator<>
 | 
					constexpr typename Vector<T, SmallVectorSize, Allocator>::template iterator<T&, T*, false>
 | 
				
			||||||
Vector<T, SmallVectorSize, Allocator>::emplace(std::size_t pos, Args&&... args) noexcept(useNoexcept) {
 | 
					Vector<T, SmallVectorSize, Allocator>::emplace(std::size_t pos, Args&&... args) noexcept(useNoexcept) {
 | 
				
			||||||
	if (m_size == m_cap) {
 | 
						if (m_size == m_cap) {
 | 
				
			||||||
		reserveInsert(m_cap ? m_cap * 2 : initialCap, pos);
 | 
							reserveInsert(m_cap ? m_cap * 2 : initialCap, pos);
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user