AuROXTL/Include/auROXTL/auString.hpp
2022-04-01 05:06:53 +01:00

28 lines
734 B
C++

/***
Copyright (C) 2022 J Reece Wilson (a/k/a "Reece"). All rights reserved.
File: auString.hpp
Date: 2022-2-1
Author: Reece
***/
#pragma once
//#include "tinyutf8.h"
//#define AU_STRING_IS_TINYUTF_EXPERIMENT
#if defined(AURORA_ROXTL_CONTAINERS_USE_PURE)
using AuString = std::string;
#elif defined(AURORA_ROXTL_STRING_USE_STR_ALLOCATOR)
template <class Base_t = std::basic_string<char, std::char_traits<char>, Aurora::Memory::StringAllocator<char>>>
struct _AuStdExString : Base_t
{
using Base_t::Base_t;
_AuStdExString(const std::string &str) : Base_t(str.begin(), str.end())
{}
};
using AuString = _AuStdExString<>;
#else
using AuString = std::string;
#endif