Download

Where is TNameEntryArray defined and which type of container is it?

I have been reading trough the source code of the FName, FText and FString implementations in order to better learn how Unreal handles the three types of text used in the Engine. One thing that I have found particularly difficult to figure out is how the table of names is implemented for instance for FName. Is it a hash, a map, a simple array?

If one goes to the source Git and searches the whole repository for the term “TNameEntryArray”, it appears only in two files, UnrealNames.cpp and NameTypes.h. However, in neither of those the class TNameEntryArray is defined; it’s only used but not defined. Where is the definition of TNameEntryArray? What type of container handles the FName entries?