Files
BusyRabbit/Plugins/UnrealSharp/Source/UnrealSharpCore/CSNamespace.cpp
wyatt 648386cd73 Lua向C#逻辑迁移 一期 #13
将整个插件代码上传
2025-10-26 21:48:39 +08:00

36 lines
905 B
C++

#include "CSNamespace.h"
#include "CSManager.h"
FString FCSNamespace::GetLastNamespace() const
{
FString NamespaceString = Namespace.ToString();
int32 LastDotIndex = NamespaceString.Find(TEXT("."), ESearchCase::CaseSensitive, ESearchDir::FromEnd);
if (LastDotIndex == INDEX_NONE)
{
return NamespaceString;
}
return NamespaceString.Right(NamespaceString.Len() - LastDotIndex - 1);
}
bool FCSNamespace::GetParentNamespace(FCSNamespace& OutParent) const
{
FString NamespaceString = Namespace.ToString();
int32 LastDotIndex = NamespaceString.Find(".", ESearchCase::CaseSensitive, ESearchDir::FromEnd);
if (LastDotIndex == INDEX_NONE)
{
return false;
}
FString ParentNamespace = NamespaceString.Left(LastDotIndex);
OutParent = FCSNamespace(*ParentNamespace);
return true;
}
UPackage* FCSNamespace::GetPackage() const
{
return UCSManager::Get().FindOrAddManagedPackage(*this);
}