Commit Graph

115 Commits

Author SHA1 Message Date
Tim Smith
3a23d86d61 Improved the detection of class methods. Resolves issue of incorrectly matching method names in comments.
#jira UE-85807
#rb none
#rnx

[CL 16886923 by Tim Smith in ue5-main branch]
2021-07-19 14:40:11 -04:00
Tim Smith
fc9af25e52 Change the Token to use a StringView instead of copying the text directly into two different buffers in the token. Improves performance of the tokenizer and provides a much smaller structure that can be cached for other uses.
#rb none
#rnx
#preflight 60f5732c1d824300016d0630

[CL 16882977 by Tim Smith in ue5-main branch]
2021-07-19 09:33:26 -04:00
Tim Smith
0b925e48a2 Removed the FToken from the FFuncInfo structure.
Saved around 100MB of memory on some larger games.

#rb none
#rnx
#preflight 60d335d1be81e80001bd8772

[CL 16757044 by Tim Smith in ue5-main branch]
2021-06-23 10:47:40 -04:00
Tim Smith
cfca999345 Removed the Class/Struct meta data class.
Fixed some API that were mistakenly setup as generic struct API instead of class API.
Removed some unused API.
No functional changes, just code reorg.

#rb none
#rnx
#preflight 60d08126d9586b0001ae3336

[CL 16727641 by Tim Smith in ue5-main branch]
2021-06-21 09:34:39 -04:00
Tim Smith
1d9018502f Cleaning up the compiler directive code.
Add error message for when WITH_EDITOR used in shipping code to hide a property.

#rb jonathan.adamczewski
#rnx
#jira UE-48666

[CL 16687191 by Tim Smith in ue5-main branch]
2021-06-16 08:49:35 -04:00
Tim Smith
9072242c05 Modify propagation of some property flags to happen after all parsing is complete. This removes a hidden restriction where parse order beyond explicit includes affected the output.
Enable concurrent parsing of headers.
Fixing uninitialized variable from prior submit.

Tested by running UHT on a sample large scale game 1000 times and verifying the output matched with a prior version of UHT.

#rb jonathan.adamczewski
#rnx
#preflight 60be0b3a0249c30001e9b0e5

[CL 16568873 by Tim Smith in ue5-main branch]
2021-06-07 08:08:33 -04:00
Tim Smith
72126e50b9 Undo //UE5/Main/Engine/Source/Programs/UnrealHeaderTool/Private/... changelist 16554523
[CL 16555686 by Tim Smith in ue5-main branch]
2021-06-03 20:34:03 -04:00
Tim Smith
3ae8fb8678 Modify propagation of some property flags to happen after all parsing is complete. This removes a hidden restriction where parse order beyond explicit includes affected the output.
Enable concurrent parsing of headers.

Tested by running UHT on a sample large scale game 1000 times and verifying the output matched with a prior version of UHT.

#rb jonathan.adamczewski
#rnx
#preflight 60b93533884c630001f06a7d

[CL 16554523 by Tim Smith in ue5-main branch]
2021-06-03 18:20:05 -04:00
Tim Smith
e5eec0d339 Cleanup of exception and logging.
#rb self
#rnx
#preflight 60af806f388f9600014b89b4

[CL 16482659 by Tim Smith in ue5-main branch]
2021-05-27 08:04:11 -04:00
Tim Smith
b6d62d54c5 Classes and ScriptStructs are now created post-parse
#rb self
#rnx

[CL 16472312 by Tim Smith in ue5-main branch]
2021-05-26 13:58:10 -04:00
Tim Smith
6dbd708a7b Removed the usage of FError::Throwf and the need for HeaderParser to set a logging context.
#rb self
#rnx
#preflight 60ae3f7f6905a60001243752

[CL 16468733 by Tim Smith in ue5-main branch]
2021-05-26 09:54:27 -04:00
Tim Smith
27c18e8061 Functions are no longer required to be created at parse time.
#rb self
#rnx
#preflight 60ad8b891d784900010f7c88

[CL 16462576 by Tim Smith in ue5-main branch]
2021-05-25 22:15:51 -04:00
Tim Smith
8d9cf63189 Properties engine types no longer need to be created during parsing.
#rb self
#rnx
#preflight 60ad1c9cbb30900001badd4b

[CL 16451820 by Tim Smith in ue5-main branch]
2021-05-25 13:02:42 -04:00
Tim Smith
4e09fb650a Implement a common meta data container to be shared between all types.
Moving more property functionality into PropertyTypes
Assorted cleanup of other methods.

#rb self
#rnx

[CL 16447199 by Tim Smith in ue5-main branch]
2021-05-25 09:43:57 -04:00
Tim Smith
16f2bed91a Remove all GetProperty calls
#rb self
#rnx
#preflight 60ac45318194e7000114aea5

[CL 16443629 by Tim Smith in ue5-main branch]
2021-05-24 21:36:39 -04:00
Tim Smith
ad65d8180e Removed the global maps for the code generation version, RigVM, and declaration ranges.
#rb self
#rnx
#preflight 60aa80201d7849000177dd7c

[CL 16432328 by Tim Smith in ue5-main branch]
2021-05-23 13:04:58 -04:00
Tim Smith
69403fc4bc Remove most of the engine types from the exporter API
#rb self
#rnx
#preflight 60aa43021d02bb0001009701

[CL 16431738 by Tim Smith in ue5-main branch]
2021-05-23 08:46:15 -04:00
Tim Smith
c9572b225e Remove FClasses
#rb self
#rnx
#preflight 60a9103c3df6e300012d8aec

[CL 16429489 by Tim Smith in ue5-main branch]
2021-05-22 10:50:10 -04:00
Tim Smith
224901db8a Change PropertyBase to reference new types.
#rb self
#rnx
#preflight 60a8eae36905a600014ed8c5

[CL 16429032 by Tim Smith in ue5-main branch]
2021-05-22 08:04:39 -04:00
Tim Smith
5c7b33f9e5 More UnrealHeaderTool refactoring
Remove FClass
Remove ClassDeclarationMetaData

#rb self
#rnx
#preflight 60a7c6140569f30001673b9c

[CL 16419880 by Tim Smith in ue5-main branch]
2021-05-21 11:52:09 -04:00
Tim Smith
377b8798c5 Added new PropertyTypes which in the long run will be where different property types are implemented.
Added new casting system betwen the different type definitions.  This allows some patterns that makes the code easier.
Moved some direct calls to engine API to FClasses.
More property data moved to the property definition.
Replacing a many more instances of referencing engine type directly with referencing UHT types.
Removed the FToken from the property data.  Saved 600MB of memory on some titles.

#rb jonathan.adamczewski
#rnx

[CL 16416114 by Tim Smith in ue5-main branch]
2021-05-21 07:29:12 -04:00
Tim Smith
9915ffe5a7 Merging the base class structure into the main type info.
Produced a common inheritance parser.
Added error return for when verification fails

#rb jonathan.adamczewski
#rnx
#preflight 60a4ef3cb7ccb00001771494

[CL 16383144 by Tim Smith in ue5-main branch]
2021-05-19 07:42:12 -04:00
Tim Smith
2504290d2e Remove the compiler meta data manager.
Elimination of some quick to resolve type system lookups.

#rnx
#rb jonathan.adamczewski
#preflight 609e5a1dcbf9a40001fe9778

[CL 16328413 by Tim Smith in ue5-main branch]
2021-05-14 07:48:15 -04:00
Tim Smith
85fc123dc0 Removed the FTokenData and FPropertyData. Information has been moved to the type system.
#rb jonathan.adamczewski
#rnx
#preflight 609d0a38a5e8310001bc76ac

[CL 16311618 by Tim Smith in ue5-main branch]
2021-05-13 07:56:52 -04:00
aurel cordonnier
50944fd712 Merge UE5/RES @ 16162155 to UE5/Main
This represents UE4/Main @ 16130047 and Dev-PerfTest @ 16126156

[CL 16163576 by aurel cordonnier in ue5-main branch]
2021-04-29 19:32:06 -04:00