Commit Graph

71 Commits

Author SHA1 Message Date
matt peters
750a447c27 Containers/RingBuffer.h: Fix compile error due to missing typename in using statement to a typedef on a templated class.
#rnx

[CL 36265376 by matt peters in 5.5 branch]
2024-09-13 10:34:14 -04:00
matt peters
30c1d0cddc Containers/RingBuffer.h: Implement use of the AllocatorT template parameter to TRingBuffer instead of bypassing it and always allocating from FMemory.
#rnx
#rb Steve.Robb

[CL 36265305 by matt peters in 5.5 branch]
2024-09-13 10:32:14 -04:00
john stiles
ab89cff8d7 [AutoRTFM] Update LockFreeFixedSizeAllocator to support AutoRTFM transactions.
This code is reachable from Verse by way of skeletal meshes/bones.

#rb ben.clayton

[CL 35973177 by john stiles in ue5-main branch]
2024-09-03 13:48:37 -04:00
jonathan bard
33b824f1cc New tests for TBitArray
#rb steve.robb
#tests FoundationTests

[CL 35192281 by jonathan bard in ue5-main branch]
2024-07-30 14:37:16 -04:00
chris constantinescu
bf4f9cb340 Common assertions header for LLTs and Functional Tests
#jira UE-220179
#rb sean.sweeney
#rnx

[CL 35150803 by chris constantinescu in ue5-main branch]
2024-07-29 16:18:35 -04:00
devin doucette
4daa5f7ab8 Added basic tests for TSharedString and fixed its use of placement new
#rb Zousar.Shaker
#rnx

[CL 34372953 by devin doucette in ue5-main branch]
2024-06-14 11:38:51 -04:00
robert millar
598a309641 Add methods to FHashTable for getting hash and index size for users that want to grow the table after the fact.
Add a move constructor.

[CL 33235594 by robert millar in ue5-main branch]
2024-04-25 12:47:03 -04:00
steve robb
bc28537104 Fixed some Printf specifiers.
#rb brandon.schaefer

[CL 33211124 by steve robb in ue5-main branch]
2024-04-24 15:59:50 -04:00
robert millar
60b9ab8d22 TDirectoryTree updates:
Add copy constructor.
Add ContainsChildPaths method.
Add tests to FoundationTests runner.

#rb Matt.Peters

[CL 32831775 by robert millar in ue5-main branch]
2024-04-09 13:42:53 -04:00
danny couture
2cd4a4d73e [ClosableMpscQueueTest]
- Fix uint32 overflow

#rnx
#jira UE-210667
#rb kevin.macaulayvacher

[CL 32573598 by danny couture in ue5-main branch]
2024-03-28 07:05:23 -04:00
devin doucette
7a5aab7d1e Fixed TScriptBitArray breaking the ClearPartialSlackBits invariant
#rb Steve.Robb

[CL 32433628 by devin doucette in ue5-main branch]
2024-03-22 10:40:40 -04:00
steve robb
66266c6a11 Fixed up DerivedDataCache, DesktopPlatform, ApplicationCore, AssetRegistry, Core, CoreUObject, Projects, Sockets code to use EAllowShrinking instead of bools.
[CL 30676428 by steve robb in ue5-main branch]
2024-01-17 19:51:06 -05:00
johan torp
62ac8364c1 Add TBitArray range-based for loop support
#rb Steve.Robb
#tests unit

[CL 30389973 by johan torp in ue5-main branch]
2023-12-19 04:54:45 -05:00
paul chipchase
2d485a8fe3 Add a test to cover the FChunkedArray iterator bug that was fixed in CL 29283139
#rb Martin.Ridgers
#rnx

- This is a cutdown version of the test that was used to identify the bug from CL 29283139.
- Moved the existing tests for FChunkedArray from "System::Core" to "System::Core::Containers"

[CL 29590591 by paul chipchase in ue5-main branch]
2023-11-09 02:31:55 -05:00
sebastian arleryd
fc71366a4d Add unit test for TMap::TIterator::RemoveCurrent
* Add new low-level unit test file for TMap tests, currently with a single unit test called "System::Core::Containers::TMap::TIterator::RemoveCurrent". This test checks that TMap::TIterator::RemoveCurrent removes the pointed-at pair from the map but that subsequent increments of the iterator do not miss any element.
* Update the documentation comment of TMap::TIterator::RemoveCurrent to point out that the method can be called without interrupting subsequent increments.

#jira UE-183373
#rb Steve.Robb
[FYI] brooke.hubert

[CL 29323829 by sebastian arleryd in ue5-main branch]
2023-11-01 13:31:01 -04:00
nick edwards
4fa4fa8db9 Add IsValidIndex function to TPagedArray for parity with other containers.
#rb Alex.Gratton
#tests Automated tests via preflight passed.

[CL 28932714 by nick edwards in ue5-main branch]
2023-10-19 16:38:54 -04:00
nick edwards
9c37766203 TBitArray:
- Find and FindAndSetFirstZeroBit updated to use FindFromImpl internally, as they perform the same search logic.
- FindAndSetLastZeroBit updated to use FindLast internally, as it performs the same search logic.
- Unit tests added for TestFindLast, TestFindAndSetFirstZeroBit and TestFindAndSetLastZeroBit

#rb Steve.Robb

[CL 26343861 by nick edwards in ue5-main branch]
2023-06-30 10:29:48 -04:00
nick edwards
f80b285963 Rename TBitArray's new FromAfter function to FindFrom. This name is more explicit about the search range being inclusive of the start index.
#rb elias.lozadabenavent

[CL 26146770 by nick edwards in ue5-main branch]
2023-06-21 09:44:29 -04:00
nick edwards
3a48caf4a5 Add FindAfter function to TBitArray, to allow a user to provide a start index when searching for a value.
Added unit tests for TBitArray's Find and FindAfter functions.

#rb Steve.Robb

[CL 26121214 by nick edwards in ue5-main branch]
2023-06-20 09:46:44 -04:00
Andriy Tylychko
ffc69528a9 fixed ExecuteOnGameThread() to support mutable functors
#preflight none

[CL 25768486 by Andriy Tylychko in ue5-main branch]
2023-06-02 14:18:11 -04:00
Andriy Tylychko
3a7b829004 added ExecuteOnGameThread() as a wrapper for FTSTicker::GetCoreTicker()
#preflight 6479cce0f40c6565430e9a61
#rb David.Harvey, Ben.Zeigler

[CL 25762686 by Andriy Tylychko in ue5-main branch]
2023-06-02 11:30:41 -04:00
peter engstrom
b6e6d8fbe6 Loop as few times as possible when adding elements to TChunkedArray.
#preflight 64423985f126d87e45d3e0db
#rb johan.torp

[CL 25174977 by peter engstrom in ue5-main branch]
2023-04-24 22:59:17 -04:00
Andriy Tylychko
fcab86d569 disabling "MPSC correctness" test for concurrent queues as it seems to be broken. also uncommenting some testing code that was accidentally commented in the previous commit
#jira UE-183124
#preflight trivial

[CL 25143473 by Andriy Tylychko in ue5-main branch]
2023-04-21 06:17:33 -04:00
Andriy Tylychko
14b9755333 deprecated TDepletableMpmcQueue as it uses spin-waiting that can cause priority inversion and subsequently deadlock on some platforms. Switched all existing instances to TConsumeAllMpmcQueue
#preflight 643fd2bb73470c177c6fe54d
#rb devin.doucette, francis.hurteau

[CL 25129447 by Andriy Tylychko in ue5-main branch]
2023-04-20 12:17:09 -04:00
nick edwards
abee54aff4 Fix C++20 compile issue. != is automatically defined if == exists in C++20, resulting in new ambiguity in some RingBuffer test code.
could be 'bool FRingBufferTest::Counter::operator ==(const FRingBufferTest::Counter &) const' [rewritten expression '!(x == y)']
or 'built-in C++ operator!=(uint32, uint32)'

#preflight 641840ec5d3e25354ff1393d
#rb none
#jira none

[CL 24716675 by nick edwards in ue5-main branch]
2023-03-20 11:25:52 -04:00