UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
TStringBuilderWithBuffer< CharType, BufferSize > Class Template Reference

#include <StringBuilder.h>

+ Inheritance diagram for TStringBuilderWithBuffer< CharType, BufferSize >:

Public Member Functions

 TStringBuilderWithBuffer ()
 
template<typename... ArgTypes>
 TStringBuilderWithBuffer (EInPlace, ArgTypes &&... Args)
 
- Public Member Functions inherited from TStringBuilderBase< CharType >
 TStringBuilderBase ()=default
 
CORE_API ~TStringBuilderBase ()
 
 TStringBuilderBase (const TStringBuilderBase &)=delete
 
 TStringBuilderBase (TStringBuilderBase &&)=delete
 
TStringBuilderBaseoperator= (const TStringBuilderBase &)=delete
 
TStringBuilderBaseoperator= (TStringBuilderBase &&)=delete
 
TStringBuilderBaseoperator= (ViewType Str)
 
TStringBuilderBaseoperator= (const CharType *Str)
 
 TStringBuilderBase (CharType *BufferPointer, int32 BufferCapacity)
 
int32 Len () const
 
CharType * GetData () UE_LIFETIMEBOUND
 
const CharType * GetData () const UE_LIFETIMEBOUND
 
const CharType * ToString () UE_LIFETIMEBOUND
 
const CharType * ToString () const UE_LIFETIMEBOUND
 
const CharType * operator* () UE_LIFETIMEBOUND
 
const CharType * operator* () const UE_LIFETIMEBOUND
 
ViewType ToView () const UE_LIFETIMEBOUND
 
CharType LastChar () const
 
SIZE_T GetAllocatedSize () const
 
void Reset ()
 
int32 AddUninitialized (int32 InCount)
 
void Reserve (int32 InNewCapacity)
 
void RemoveSuffix (int32 InCount)
 
template<typename OtherCharType , std::enable_if_t< TIsCharType< OtherCharType >::Value > * = nullptr>
BuilderTypeAppend (const OtherCharType *const String, const int32 Length)
 
template<typename CharRangeType >
auto Append (CharRangeType &&Range) -> decltype(Append(MakeStringView(Forward< CharRangeType >(Range)).GetData(), int32(0)))
 
template<typename AppendedCharType , std::enable_if_t< TIsCharType< AppendedCharType >::Value > * = nullptr>
BuilderTypeAppendChar (AppendedCharType Char)
 
void ReplaceAt (int32 Pos, int32 RemoveLen, ViewType Str)
 
void InsertAt (int32 Pos, ViewType Str)
 
void RemoveAt (int32 Pos, int32 RemoveLen)
 
void Prepend (ViewType Str)
 
template<typename AppendedCharType >
auto Add (AppendedCharType Char) -> decltype(AppendChar(Char),(void) 0)
 
template<typename RangeType , typename DelimiterType >
requires requires (BuilderType& Builder, RangeType&& Range, const DelimiterType& Delimiter) { Builder << *std::begin(Range); Builder << Delimiter; }
BuilderTypeJoin (RangeType &&InRange, const DelimiterType &InDelimiter)
 
template<typename RangeType , typename DelimiterType , typename QuoteType >
requires requires (BuilderType& Builder, RangeType&& Range, const DelimiterType& Delimiter, const QuoteType& Quote) { Builder << Quote << *std::begin(Range) << Quote; Builder << Delimiter; }
BuilderTypeJoinQuoted (RangeType &&InRange, const DelimiterType &InDelimiter, const QuoteType &InQuote)
 
template<typename FmtType , typename... Types UE_REQUIRES>
BuilderTypeAppendf (const FmtType &Fmt, Types... Args)
 
CORE_API BuilderTypeAppendV (const CharType *Fmt, va_list Args)
 

Additional Inherited Members

- Public Types inherited from TStringBuilderBase< CharType >
using ElementType = CharType
 
using BuilderType = TStringBuilderBase< ElementType >
 
using ViewType = TStringView< ElementType >
 
- Protected Member Functions inherited from TStringBuilderBase< CharType >
 TStringBuilderBase (CharType *InBase, int32 InCapacity, UE::Core::Private::FDynamicStringBuilderToken)
 
 TStringBuilderBase (CharType *InBase, int32 InCapacity, UE::Core::Private::FExternalStringBuilderToken)
 
void Initialize (CharType *InBase, int32 InCapacity)
 
void EnsureNulTerminated ()
 
void EnsureAdditionalCapacity (int32 RequiredAdditionalCapacity)
 
CORE_API void Extend (SIZE_T ExtraCapacity)
 
voidAllocBuffer (SIZE_T CharCount)
 
void FreeBuffer (void *Buffer)
 
- Protected Attributes inherited from TStringBuilderBase< CharType >
CharType * Base = nullptr
 
CharType * CurPos = nullptr
 
CharType * End = nullptr
 
bool bIsDynamic = false
 
bool bIsExternal = false
 

Detailed Description

template<typename CharType, int32 BufferSize>
class TStringBuilderWithBuffer< CharType, BufferSize >

A string builder with inline storage.

Avoid using this type directly. Prefer the aliases in StringFwd.h like TStringBuilder<N>.

Constructor & Destructor Documentation

◆ TStringBuilderWithBuffer() [1/2]

template<typename CharType , int32 BufferSize>
TStringBuilderWithBuffer< CharType, BufferSize >::TStringBuilderWithBuffer ( )
inline

◆ TStringBuilderWithBuffer() [2/2]

template<typename CharType , int32 BufferSize>
template<typename... ArgTypes>
TStringBuilderWithBuffer< CharType, BufferSize >::TStringBuilderWithBuffer ( EInPlace  ,
ArgTypes &&...  Args 
)
inlineexplicit

Construct a string builder by appending the arguments using operator<<.


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