You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
o3de/Gems/EMotionFX/Code/Tests/TestAssetCode
lumberyard-employee-dm f3e9e41f4f
Adding partial implementation of C++20 concepts and range functions for AZStd::span (#7102)
* Adding partial implementation of C++20 concepts and range functions for AZStd::span

The new concepts to discovered existing issues with the PathIterator and deque::iterator classes
PathIterator wasn't properly an input_iterator and therefore the Path classes weren't a range due to an incorrect const_iterator alias
The deque::iterator classes was missing the operator+ friend function that accepted a (ptrdiff_t, deque::iterator) to fulfill the random_access_iterator concepts

The AZStd implementations of (uninitialized_)copy(_n), (uninitialized_)move(_n) and (uninitialized_)file(_n) have been optimized to use memcpy and memset based on fulfilling the contiguous_iterator concept

Fixed invalid AZStd::vector inserts in FrameGraphExecuter.cpp and SliceditorEntityOwnershipService.cpp
The code was trying to copy the underlying addresses for vector<unique_ptr> to a vector<raw pointer> using insert, which it was doing by using memcpy.

relates to #6749

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Fixed the `fixed_vector` emplace function to not move initialized
elements using uninitialized_move.

This was causing initialized elements of the fixed_vector to be
overwritten with the element at the emplace position.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Fixed clang warnings about variables that are set, but never read

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the `az_has_builtin_is_constant_evaluated` define to not have
"()" as is not a macro.

This helps prevent users from using `az_has_builtin_is_constant_evaluated`
define in a situation where they want to know if the function is being
evaluated in a compile time context.
In that case they need to use the `az_builtin_is_constant_evaluated()`
macro (which of course looks quite similiar) but does not have the word
"has" in it..

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the AZStd span class to be C++20 compliant.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Changed phrase "DoesNotCompiles" to be more grammatically correct.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Added more unit test for AZStd span

Fixed an the the return type of the subspan template overload to account
for the source span having a dynamic extent.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removed unused variable from span unit test.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
4 years ago
..
ActorAssetFactory.h Shorten copyright headers by splitting into 2 lines (#2213) 4 years ago
ActorFactory.h Fixed emfx unit tests 4 years ago
AnimGraphAssetFactory.h Shorten copyright headers by splitting into 2 lines (#2213) 4 years ago
AnimGraphFactory.cpp Shorten copyright headers by splitting into 2 lines (#2213) 4 years ago
AnimGraphFactory.h Shorten copyright headers by splitting into 2 lines (#2213) 4 years ago
JackActor.cpp Fix Node/Skeleton uint32->size_t 4 years ago
JackActor.h Shorten copyright headers by splitting into 2 lines (#2213) 4 years ago
MeshFactory.cpp Adding partial implementation of C++20 concepts and range functions for AZStd::span (#7102) 4 years ago
MeshFactory.h Shorten copyright headers by splitting into 2 lines (#2213) 4 years ago
MotionEvent.cpp Shorten copyright headers by splitting into 2 lines (#2213) 4 years ago
MotionEvent.h Shorten copyright headers by splitting into 2 lines (#2213) 4 years ago
MotionSetAssetFactory.h Shorten copyright headers by splitting into 2 lines (#2213) 4 years ago
SimpleActors.cpp This reduces non-unity build time by ~2% and build size by ~0.5%. 4 years ago
SimpleActors.h Shorten copyright headers by splitting into 2 lines (#2213) 4 years ago
TestActorAssets.cpp Fix unit test 4 years ago
TestActorAssets.h Fix unit test 4 years ago
TestMotionAssets.cpp Shorten copyright headers by splitting into 2 lines (#2213) 4 years ago
TestMotionAssets.h Shorten copyright headers by splitting into 2 lines (#2213) 4 years ago