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/Code/Framework/AzCore/AzCore
Artur K e193e5b353
EnvironmentVariableHolder: reduce the size of template instantiation. (#2857)
* EnvironmentVariableHolder: reduce the size of template instantiation.

Move almost all destruction logic to EnvironmentVariableHolderBase::UnregisterAndDestroy.
Specialized templates have DestructDispatchNoLock instead that can either destroy the held value,
or the holder itself.

UnregisterAndDestroy has been moved to the cpp file.

All of these changes reduce the profile build time and size on linux
Here, the size of bin/profile goes down by ~200MB.

Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>

* Requested changes/fixups.

Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>

* Use scoped_lock to simplify mutex management.

Updated comments.

Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>

* Hopefully a fix for env variables released at a wrong time

Conditional was using incorrect variable

Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>

* Comment fixup

Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>

* Missing negation in conditional

Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>

* Cleanup the internal logic in UnregisterAndDestroy

Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
5 years ago
..
Android Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Asset Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Casting Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Component Remove unneeded fields from Entity and EditorTransform JsonSerializers 5 years ago
Compression Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Console Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Debug Debug Trace Messages for Automation queues bus calls. (#2328) 5 years ago
Driller Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
EBus Fixed the emplace function implementations for stack and queue (#2657) 5 years ago
IO CryEngine compiles 5 years ago
IPC Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Interface Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
JSON Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Jobs Adding newline to the end of the new Job.cpp file 5 years ago
Math CryEngine compiles 5 years ago
Memory Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Module EnvironmentVariableHolder: reduce the size of template instantiation. (#2857) 5 years ago
Name Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
NativeUI Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Outcome Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
PlatformId Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Preprocessor Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
RTTI Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Script Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
ScriptCanvas Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Serialization Merge branch 'development' into cmake/SPEC-2513_w4267 5 years ago
Settings Register show command fix (#2408) 5 years ago
Slice Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Socket Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
State Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Statistics Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
StringFunc Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Threading Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Time Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
UnitTest Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
UserSettings Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Utils Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
XML Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
std Bunch of small bug fixes (#2813) 5 years ago
AzCoreModule.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
AzCoreModule.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
BuildInfo.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Docs.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Platform.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Platform.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
PlatformDef.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
PlatformIncl.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
PlatformRestrictedFileDef.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
azcore_files.cmake Move most AZ::Job function bodies out of the header 5 years ago
azcoretestcommon_files.cmake Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
base.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago