Add project files.

This commit is contained in:
Milxnor
2023-03-04 15:06:07 -05:00
commit 039731eb68
200 changed files with 32320 additions and 0 deletions

View File

@@ -0,0 +1,47 @@
#pragma once
#include <locale>
#include "Array.h"
class FString
{
TArray<TCHAR> Data;
public:
std::string ToString() const
{
auto length = std::wcslen(Data.Data);
std::string str(length, '\0');
std::use_facet<std::ctype<wchar_t>>(std::locale()).narrow(Data.Data, Data.Data + length, '?', &str[0]);
return str;
}
void Free()
{
Data.Free();
}
bool IsValid()
{
return Data.Data;
}
void Set(const wchar_t* NewStr) // by fischsalat
{
if (!NewStr || std::wcslen(NewStr) == 0) return;
Data.ArrayMax = Data.ArrayNum = *NewStr ? (int)std::wcslen(NewStr) + 1 : 0;
if (Data.ArrayNum)
Data.Data = const_cast<wchar_t*>(NewStr);
}
FString() {}
FString(const wchar_t* str)
{
Set(str);
}
};