More work on tokenizer

This commit is contained in:
2026-03-30 00:57:28 -04:00
parent 6041641c74
commit 339495ae3b
5 changed files with 85 additions and 53 deletions

View File

@@ -59,25 +59,25 @@ FName WingUtils::GetFName(const FWingProperty &Prop) { return Prop.Prop->GetFNam
FString WingUtils::ExternalizeID(FName Name)
{
return WingTokenizer::ExternalizeID(Name.ToString());
return WingTokenizer::ExternalizeID(Name);
}
FName WingUtils::CheckInternalizeID(const FString &ExternalID)
{
FString Error;
FString InternalID = WingTokenizer::TryInternalizeID(ExternalID, Error);
FName InternalID = WingTokenizer::TryInternalizeID(ExternalID, Error);
if (!Error.IsEmpty())
{
UWingServer::Printf(TEXT("%s\n"), *Error);
UWingServer::SuggestManual(WingManual::Section::EscapeSequences);
}
return FName(InternalID);
return InternalID;
}
FName WingUtils::CheckProposedName(const FString &ExternalID)
{
FName InternalID = CheckInternalizeID(ExternalID);
if (!InternalID.IsNone() && !WingTokenizer::WouldExternalizeReadably(InternalID.ToString()))
if (!InternalID.IsNone() && !WingTokenizer::WouldExternalizeReadably(InternalID))
{
UWingServer::Printf(TEXT("ERROR: id %s would not be a readable id, may not create item with this name"),
*ExternalID);