Atlassian uses cookies to improve your browsing experience, perform analytics and research, and conduct advertising. Accept all cookies to indicate that you agree to our use of cookies on your device. Atlassian cookies and tracking notice, (opens new window)
/
class Geo GeoString

    This is the documentation for Enlighten.

    class Geo GeoString

    Nov 21, 2019

    template<typename>
    class Geo::GeoString

    STL string replacement.

    Standard length doubling strategy allows for continued concatenation. Contains few of the algorithm functions (find_if, etc) but does have conversion from one string format to another. Also contains a Printf() function that creates a string from a standard C style format specifier, without the user having to know the maximum string length beforehand. There is no such thing as a NULL string representation; default constructor and construction from a NULL pointer both result in an empty string. If you must distinguish between empty and unset, use the Geo::Optional class.

    Typedefs

    Name Description
    T CharType

    The character type of this string.

    Functions

    Name Description
    ~GeoString()

    Destructor.

    Clear()

    Clear the string.

    CopyTo(T *, s32)

    Copies the content of this string to the given raw character buffer.

    Crop(s32)

    Terminates the string at the given position.

    CropAfterLastChar(T)

    This will remove the string beyond and including the last character specified if there is one.

    CropBeforeLastChar(T)

    This will remove the string up to and including the last character specified if there is one.

    ForceLength(s32)

    Directly sets the length of the string to the given value.

    FromUtf8(const char *)

    Creates a new string of this format from a narrow string.

    GeoString()

    Default constructor.

    GeoString(const GeoString &)

    Copy constructor.

    GeoString(s32)

    Explicit constructor for an initial buffer length.

    GeoString(const T *, s32)

    Explicit constructor from an array of size n.

    GeoString(const T *)

    Explicit constructor from a null-terminated array.

    GeoString(GeoString &&)

    Move constructor.

    GetCapacity()

    Returns the string capacity.

    GetCString()

    Returns a const raw pointer to the string.

    GetLength()

    Returns the length of the string.

    GetString()

    Returns a non-const raw pointer to the string.

    IsEmpty()

    Returns true if the string is empty.

    operator[](s32)

    Element access operator. Do not use this to assign a terminator, or the string will very likely be corrupted.

    operator<(const GeoString &)

    Comparison (required to use strings as keys in a map).

    Printf(const T *, ...)

    Creates a string from a standard C style format specifier, without the user having to know the maximum string length beforehand.

    SetCapacity(s32)

    Set the string capacity (increase only).

    Substring(Geo::s32, Geo::s32)

    Returns a subsection of the string.

    Swap(GeoString &)

    Swap places with other.

    ToUtf8()

    Returns a new narrow string from this one.


    Geo::GeoString< T >::~GeoString


    public: ~GeoString()


    Destructor.


    void Geo::GeoString< T >::Clear


    public: void Clear()


    Clear the string.


    s32 Geo::GeoString< T >::CopyTo


    public: s32 CopyTo
    (
        T * buffer,
        s32 maxCharsToCopy
    ) const


    Copies the content of this string to the given raw character buffer.

    Note this does not


    copy the NUL terminator to the destination buffer.

    Parameters
    [in] buffer

    The destination buffer.

    [in] maxCharsToCopy

    If this is less than the length of the string then only this many characters will be copied.

    Returns

    The number of characters copied.


    bool Geo::GeoString< T >::Crop


    public: bool Crop
    (
        s32 position
    )


    Terminates the string at the given position.

    If position is less than the current length of the string it returns true, otherwise this is a no-op and returns false.


    bool Geo::GeoString< T >::CropAfterLastChar


    public: bool CropAfterLastChar
    (
        T c
    )


    This will remove the string beyond and including the last character specified if there is one.

    If there isn't one it won't do anything.

    Returns

    True if the string was cropped.


    bool Geo::GeoString< T >::CropBeforeLastChar


    public: bool CropBeforeLastChar
    (
        T c
    )


    This will remove the string up to and including the last character specified if there is one.

    If there isn't one it won't do anything.

    Returns

    True if the string was cropped.


    void Geo::GeoString< T >::ForceLength


    public: void ForceLength
    (
        s32 position
    )


    Directly sets the length of the string to the given value.

    Useful for when the internal buffer is directly manipulated (after calling GetString()) and the stored length of the string needs to be kept in-sync.


    static GeoString Geo::GeoString< T >::FromUtf8


    public: GeoString FromUtf8
    (
        const char * utf8
    )


    Creates a new string of this format from a narrow string.


    Geo::GeoString< T >::GeoString


    public: GeoString()


    Default constructor.


    Geo::GeoString< T >::GeoString


    public: GeoString
    (
        const GeoString & rhs
    )


    Copy constructor.


    Geo::GeoString< T >::GeoString


    public: GeoString
    (
        s32 capacity
    )


    Explicit constructor for an initial buffer length.


    Geo::GeoString< T >::GeoString


    public: GeoString
    (
        const T * str,
        s32 n
    )


    Explicit constructor from an array of size n.


    Geo::GeoString< T >::GeoString


    public: GeoString
    (
        const T * str
    )


    Explicit constructor from a null-terminated array.


    Geo::GeoString< T >::GeoString


    public: GeoString
    (
        GeoString && rhs
    )


    Move constructor.


    s32 Geo::GeoString< T >::GetCapacity


    public: s32 GetCapacity() const


    Returns the string capacity.


    const T* Geo::GeoString< T >::GetCString


    public: const T * GetCString() const


    Returns a const raw pointer to the string.


    s32 Geo::GeoString< T >::GetLength


    public: s32 GetLength() const


    Returns the length of the string.


    T* Geo::GeoString< T >::GetString


    public: T * GetString()


    Returns a non-const raw pointer to the string.


    bool Geo::GeoString< T >::IsEmpty


    public: bool IsEmpty() const


    Returns true if the string is empty.


    T Geo::GeoString< T >::operator[]


    public: T operator[]
    (
        s32 idx
    ) const


    Element access operator. Do not use this to assign a terminator, or the string will very likely be corrupted.


    bool Geo::GeoString< T >::operator<


    public: bool operator<
    (
        const GeoString & rhs
    ) const


    Comparison (required to use strings as keys in a map).


    static GeoString Geo::GeoString< T >::Printf


    public: GeoString Printf
    (
        const T * ,
        ...
    )


    Creates a string from a standard C style format specifier, without the user having to know the maximum string length beforehand.


    bool Geo::GeoString< T >::SetCapacity


    public: bool SetCapacity
    (
        s32 minLength
    )


    Set the string capacity (increase only).


    GeoString Geo::GeoString< T >::Substring


    public: GeoString Substring
    (
        Geo::s32 idxBegin,
        Geo::s32 idxEnd
    ) const


    Returns a subsection of the string.

    Parameters
    [in] idxBegin

    Index of first character of substring.

    [in] idxEnd

    Index of 'one past end' of substring. May specify -1 to mean 'end of string'.


    void Geo::GeoString< T >::Swap


    public: void Swap
    (
        GeoString & other
    )


    Swap places with other.


    GeoString<char> Geo::GeoString< T >::ToUtf8


    public: GeoString< char > ToUtf8() const


    Returns a new narrow string from this one.

    , multiple selections available,

    Enlighten API 3.10 Documentation
    Results will update as you type.
    • class Geo GeoFrameTime
    • class Geo GeoFreeDestructor
    • class Geo GeoGenericTexture
    • class Geo GeoGuid
    • class Geo GeoHalf
    • class Geo GeoHashConstHandle
    • class Geo GeoHashCString
    • class Geo GeoHashDefault
    • class Geo GeoHashHandle
    • class Geo GeoHashMap
    • class Geo GeoHashString
    • class Geo GeoImmutableArray
    • class Geo GeoInputEvent
    • class Geo GeoInstanceCount
    • class Geo GeoIntRange
    • class Geo GeoIntrusivePtr
    • class Geo GeoKeyValueArray
    • class Geo GeoLineSegment
    • class Geo GeoList
    • class Geo GeoMap
    • class Geo GeoMemoryDefault
    • class Geo GeoMemoryPool
    • class Geo GeoMemoryStream
    • class Geo GeoNonAABoundingBox
    • class Geo GeoNoopDestructor
    • class Geo GeoPair
    • class Geo GeoParametrisedPlane3
    • class Geo GeoPriorityQueue
    • class Geo GeoProgress
    • class Geo GeoQueue
    • class Geo GeoQueueEnumInterface
    • class Geo GeoRefArrayPtr
    • class Geo GeoRefCount
    • class Geo GeoRefPtr
    • class Geo GeoRefReleasePtr
    • class Geo GeoReleaseDestructor
    • class Geo GeoRGBXTexture
    • class Geo GeoScopedCSection
    • class Geo GeoSingleton
    • class Geo GeoSpatialHash
    • class Geo GeoString
    • class Geo GeoTimer
    • class Geo GeoTokenList
    • class Geo GeoTokenStream
    • class Geo GeoTriangle
    • class Geo GeoTriple
    • class Geo GeoUniqueDelegatePtr
    • class Geo GeoUniquePtr
    • class Geo GeoUniqueReleasePtr
    • class Geo GeoV128Texture
    • class Geo GeoVariant
    • class Geo GeoVirtualPageAllocator
    • class Geo GeoZLibFileStream
    • class Geo GoodRNG
    • class Geo IdentDataCompare
    • class Geo IdentVertLinkBuilder
    • class Geo IdxLink
    • class Geo IffReader
    • class Geo IffTextWriter
    • class Geo IffWriter
    • class Geo IGeoEvent
    • class Geo IGeoInputStream
    • class Geo IGeoProgressProxy
    • class Geo IGeoRayTracingContext
    • class Geo IGeoReleasable
    • class Geo IGeoSerialisable
    • class Geo IGeoStream
    • class Geo IRtMesh
    • class Geo ITerminalCmdHandler
    • class Geo ITerminalDelegate
    • class Geo ITerminalInputHandler
    • class Geo ITerminalOutputHandler
    • class Geo Matrix
    • class Geo MemoryAllocator
    • class Geo NonCopyable
    • class Geo Optional
    • class Geo PackedInteger4
    • class Geo PointLeaf
    • class Geo PointSplit
    • class Geo PointSplitBounds
    • class Geo PointSplitState
      Calendars

    You‘re viewing this with anonymous access, so some content might be blocked.
    {"serverDuration": 10, "requestCorrelationId": "d455f44befe84f4ebb00dee494010733"}