UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FCoreRedirectObjectName Struct Reference

#include <CoreRedirects.h>

Public Types

enum class  EMatchFlags {
  None = 0 , DisallowPartialLHSMatch = (1 << 0) , AllowPartialRHSMatch = (1 << 1) , CheckSubString = (1 << 2) ,
  CheckPrefix = (1 << 3) , CheckSuffix = (1 << 4)
}
 

Public Member Functions

 FCoreRedirectObjectName ()=default
 
 FCoreRedirectObjectName (FName InObjectName, FName InOuterName, FName InPackageName)
 
COREUOBJECT_API FCoreRedirectObjectName (const FTopLevelAssetPath &TopLevelAssetPath)
 
COREUOBJECT_API FCoreRedirectObjectName (const FSoftObjectPath &SoftObjectPath)
 
COREUOBJECT_API FCoreRedirectObjectName (const FString &InString)
 
COREUOBJECT_API FCoreRedirectObjectName (const class UObject *Object)
 
COREUOBJECT_API FString ToString () const
 
COREUOBJECT_API void Reset ()
 
bool operator== (const FCoreRedirectObjectName &Other) const
 
bool operator!= (const FCoreRedirectObjectName &Other) const
 
COREUOBJECT_API int Compare (const FCoreRedirectObjectName &Other) const
 
COREUOBJECT_API bool Matches (const FCoreRedirectObjectName &Other, EMatchFlags MatchFlags=EMatchFlags::None) const
 
COREUOBJECT_API int32 MatchScore (const FCoreRedirectObjectName &Other, ECoreRedirectFlags RedirectFlags, ECoreRedirectMatchFlags MatchFlags) const
 
COREUOBJECT_API void UnionFieldsInline (const FCoreRedirectObjectName &Other)
 
FName GetSearchKey (ECoreRedirectFlags Type) const
 
bool IsValid () const
 
COREUOBJECT_API bool HasValidCharacters (ECoreRedirectFlags Type) const
 
COREUOBJECT_API void AppendHash (FBlake3 &Hasher) const
 

Static Public Member Functions

static COREUOBJECT_API bool ExpandNames (const FStringView FullString, FName &OutName, FName &OutOuter, FName &OutPackage)
 
static COREUOBJECT_API FString CombineNames (FName NewName, FName NewOuter, FName NewPackage)
 
static COREUOBJECT_API FCoreRedirectObjectName AppendObjectName (const FCoreRedirectObjectName &Parent, FName ObjectName)
 
static COREUOBJECT_API FCoreRedirectObjectName GetParent (const FCoreRedirectObjectName &Child)
 

Public Attributes

FName ObjectName
 
FName OuterName
 
FName PackageName
 

Friends

uint32 GetTypeHash (const FCoreRedirectObjectName &RedirectName)
 

Detailed Description

An object path extracted into component names for matching. TODO merge with FSoftObjectPath?

Member Enumeration Documentation

◆ EMatchFlags

Flags for the Matches function. These flags overlap but are lower-level than ECoreRedirectMatchFlags.

Enumerator
None 
DisallowPartialLHSMatch 

Do not match if LHS (aka *this) has null fields that RHS (aka Other) does not. Default is to match.

AllowPartialRHSMatch 

Match even if RHS (aka Other) has null fields that LHS (aka *this) does not. Default is to NOT match.

CheckSubString 

LHS fields (aka *this) are searchstrings; RHS (aka Other) fields are searched for that substring. Without this flag a Match returns true if and only if the complete string matches: LHS == RHS. With this flag a Match returns true if and only if RHS.Contains(LHS). This flag makes the match more expensive and should be avoided when possible. This flag forces partial LHS matches, and will ignore the DisallowPartialLHSMatch flag when matching.

CheckPrefix 

LHS fields (aka *this) are searchstrings; RHS (aka Other) fields are searched for that prefix. Without this flag a Match returns true if and only if the complete string matches: LHS == RHS. With this flag a Match returns true if and only if RHS.StartsWith(LHS). This flag makes the match more expensive and should be avoided when possible. This flag forces partial LHS matches, and will ignore the DisallowPartialLHSMatch flag when matching.

CheckSuffix 

LHS fields (aka *this) are searchstrings; RHS (aka Other) fields are searched for that suffix. Without this flag a Match returns true if and only if the complete string matches: LHS == RHS. With this flag a Match returns true if and only if RHS.EndsWith(LHS). This flag makes the match more expensive and should be avoided when possible. This flag forces partial LHS matches, and will ignore the DisallowPartialLHSMatch flag when matching.

Constructor & Destructor Documentation

◆ FCoreRedirectObjectName() [1/6]

FCoreRedirectObjectName::FCoreRedirectObjectName ( )
default

Default to invalid names

◆ FCoreRedirectObjectName() [2/6]

FCoreRedirectObjectName::FCoreRedirectObjectName ( FName  InObjectName,
FName  InOuterName,
FName  InPackageName 
)
inline

Construct from FNames that are already expanded

◆ FCoreRedirectObjectName() [3/6]

FCoreRedirectObjectName::FCoreRedirectObjectName ( const FTopLevelAssetPath TopLevelAssetPath)

◆ FCoreRedirectObjectName() [4/6]

FCoreRedirectObjectName::FCoreRedirectObjectName ( const FSoftObjectPath SoftObjectPath)

◆ FCoreRedirectObjectName() [5/6]

FCoreRedirectObjectName::FCoreRedirectObjectName ( const FString &  InString)

◆ FCoreRedirectObjectName() [6/6]

FCoreRedirectObjectName::FCoreRedirectObjectName ( const class UObject Object)

Construct from object in memory

Member Function Documentation

◆ AppendHash()

void FCoreRedirectObjectName::AppendHash ( FBlake3 Hasher) const

Update Hasher with all fields from this

◆ AppendObjectName()

FCoreRedirectObjectName FCoreRedirectObjectName::AppendObjectName ( const FCoreRedirectObjectName Parent,
FName  ObjectName 
)
static

Given parent FCoreRedirectObjectName and FName of a child under it, return child's FCoreRedirectObjectName.

◆ CombineNames()

FString FCoreRedirectObjectName::CombineNames ( FName  NewName,
FName  NewOuter,
FName  NewPackage 
)
static

Turn it back into an FString

◆ Compare()

int FCoreRedirectObjectName::Compare ( const FCoreRedirectObjectName Other) const

Compares the two names lexically, returning -,0,+

◆ ExpandNames()

bool FCoreRedirectObjectName::ExpandNames ( const FStringView  FullString,
FName OutName,
FName OutOuter,
FName OutPackage 
)
static

Expand OldName/NewName as needed

◆ GetParent()

FCoreRedirectObjectName FCoreRedirectObjectName::GetParent ( const FCoreRedirectObjectName Child)
static

Given a child FCoreRedirectObjectName, return its parent's FCoreRedirectObjectName. If the input has no parent (empty or is package with no outer), returns an empty FCoreRedirectObjectName.

◆ GetSearchKey()

FName FCoreRedirectObjectName::GetSearchKey ( ECoreRedirectFlags  Type) const

Returns the name used as the key into the acceleration map

◆ HasValidCharacters()

bool FCoreRedirectObjectName::HasValidCharacters ( ECoreRedirectFlags  Type) const

Returns true if all names have valid characters

◆ IsValid()

bool FCoreRedirectObjectName::IsValid ( ) const
inline

Returns true if this refers to an actual object

◆ Matches()

bool FCoreRedirectObjectName::Matches ( const FCoreRedirectObjectName Other,
EMatchFlags  MatchFlags = EMatchFlags::None 
) const

Returns true if the passed in name matches requirements.

◆ MatchScore()

int32 FCoreRedirectObjectName::MatchScore ( const FCoreRedirectObjectName Other,
ECoreRedirectFlags  RedirectFlags,
ECoreRedirectMatchFlags  MatchFlags 
) const

Returns integer of degree of match. 0 if doesn't match at all, higher integer for better matches

◆ operator!=()

bool FCoreRedirectObjectName::operator!= ( const FCoreRedirectObjectName Other) const
inline

◆ operator==()

bool FCoreRedirectObjectName::operator== ( const FCoreRedirectObjectName Other) const
inline

Checks for exact equality

◆ Reset()

void FCoreRedirectObjectName::Reset ( )

Sets back to invalid state

◆ ToString()

FString FCoreRedirectObjectName::ToString ( ) const

Creates FString version

◆ UnionFieldsInline()

void FCoreRedirectObjectName::UnionFieldsInline ( const FCoreRedirectObjectName Other)

Fills in any empty fields on this with the corresponding fields from Other.

Friends And Related Symbol Documentation

◆ GetTypeHash

uint32 GetTypeHash ( const FCoreRedirectObjectName RedirectName)
friend

Member Data Documentation

◆ ObjectName

FName FCoreRedirectObjectName::ObjectName

Raw name of object

◆ OuterName

FName FCoreRedirectObjectName::OuterName

String of outer chain, may be empty

◆ PackageName

FName FCoreRedirectObjectName::PackageName

Package this was in before, may be extracted out of OldName


The documentation for this struct was generated from the following files: