Open Search
    string.h File Reference

    Classes

    class  StringPosition
     
    class  StringEnd
     
    class  StringCount
     
    class  StringTemplate< INTERFACETYPE, REFTYPE, CHARTYPE >
     
    class  StringTemplate< INTERFACETYPE, REFTYPE, CHARTYPE >::CharPtr
     
    class  SysCharArray
     
    class  StringInterface
     
    class  CStringInterface
     
    class  String
     
    class  String::StringIterator
     
    class  CString
     
    class  ToStringHelper2< T, false >
     
    class  ToStringHelper2< T, true >
     
    class  StringProxy
     
    class  FormatStatement
     

    Namespaces

     maxon
     

    Macros

    #define CONSTSTRING(x)
     
    #define CONSTCSTRING(x)
     
    #define FormatString(...)
     
    #define FormatCString(...)
     

    Typedefs

    using Utf16CharBuffer = BufferedBaseArray< Utf16Char, 512 >
     
    using Utf32CharBuffer = BufferedBaseArray< Utf32Char, 256 >
     
    using FROMSTR = void(*)(void *p, const Block< const Utf32Char > &str, Int &processed, const String &formatStatement, Bool &error)
     

    Enumerations

    enum class  STRINGCONVERSION {
      NONE ,
      ALLOW_MORE_CHARACTERS
    }
     
    enum class  STRINGCOMPARISON {
      MEMORY ,
      UNICODE_LETTERS ,
      UNICODE_NUMBERS ,
      CASEINSENSITIVE ,
      CASEINSENSITIVE_NUMBERS
    }
     

    Functions

    const StringDecodingRef & GetUtf8DefaultDecoder ()
     
    const StringEncodingRef & GetUtf8DefaultEncoder ()
     
    enum maxon::STRINGCONVERSION MAXON_ENUM_FLAGS (STRINGCONVERSION)
     
    enum maxon::STRINGCOMPARISON MAXON_ENUM_LIST (STRINGCOMPARISON)
     
    const CString & operator""_cs (const char *str, std::size_t cnt)
     
    Result< void > DescribeIO (const CStringInterface &s, const DataSerializeInterface &dsi)
     
    Result< void > DescribeIO (const StringInterface &s, const DataSerializeInterface &dsi)
     
    String operator+ (const String &a, const String &b)
     
    String && operator+ (String &&a, const String &b)
     
    String && operator+ (String &&a, String &&b)
     
    String && operator+ (const String &a, String &&b)
     
    CString operator+ (const CString &a, const CString &b)
     
    CString && operator+ (CString &&a, const CString &b)
     
    CString && operator+ (CString &&a, CString &&b)
     
    CString && operator+ (const CString &a, CString &&b)
     
    Stringoperator+= (String &s, const CString &b)
     
    String operator+ (const String &a, const CString &b)
     
    String && operator+ (String &&a, const CString &b)
     
    String operator+ (const String &a, const Char *b)
     
    String && operator+ (String &&a, const Char *b)
     
    CString operator+ (const CString &a, const Char *b)
     
    CString && operator+ (CString &&a, const Char *b)
     
    String ToString (const String &str, const FormatStatement *formatStatement, Bool=false)
     
    String ToString (const CString &str, const FormatStatement *formatStatement, Bool=false)
     
    template<typename T >
    decltype(std::declval< T >().ToString()) ToStringHelper (const T *object, const FormatStatement *formatStatement, Int *)
     
    template<typename T >
    String ToStringHelper (const T *object, const FormatStatement *formatStatement, const Int *checkDataType)
     
    template<typename T >
    std::enable_if<!STD_IS_REPLACEMENT(enum, T), String >::type ToString (const T &object, const FormatStatement *formatStatement, Bool checkDataType=true)
     
    template<typename T >
    std::enable_if< STD_IS_REPLACEMENT(enum, T), String >::type ToString (const T &object, const FormatStatement *formatStatement, Bool checkDataType=true)
     
    template<typename T >
    std::enable_if<!STD_IS_REPLACEMENT(function, T), String >::type ToString (const T *object, const FormatStatement *formatStatement)
     
    template<typename T >
    String GlobalToString (const T &object, const FormatStatement *formatStatement, Bool checkDataType=true)
     
    const StringToString (Bool val, const FormatStatement *formatStatement, Bool=false)
     
    String ToString (Char val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ToString (UChar val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ToString (Int16 val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ToString (Int32 val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ToString (Int64 val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ToString (UInt16 val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ToString (UInt32 val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ToString (UInt64 val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ToString (Float64 val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ToString (Float32 val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ToString (Utf16Char val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ToString (Utf32Char val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ToString (Char *val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ToString (const Char *val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ToString (const void *val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ToString (void *val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ToString (const Generic *val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ToString (Generic *val, const FormatStatement *formatStatement, Bool checkDataType=false)
     
    String ExtractString (StringProxy *proxy)
     
    const StringExtractString (const String &str)
     
    const CharExtractString (const Char *str)
     
    void ScanParameter (Float64 &result, const Block< const Utf32Char > &str, Int &processed, const String &formatStatement, Bool &error)
     
    void ScanParameter (Float32 &result, const Block< const Utf32Char > &str, Int &processed, const String &formatStatement, Bool &error)
     
    void ScanParameter (Int64 &result, const Block< const Utf32Char > &str, Int &processed, const String &formatStatement, Bool &error)
     
    void ScanParameter (Int32 &result, const Block< const Utf32Char > &str, Int &processed, const String &formatStatement, Bool &error)
     
    void ScanParameter (Int16 &result, const Block< const Utf32Char > &str, Int &processed, const String &formatStatement, Bool &error)
     
    void ScanParameter (Char &result, const Block< const Utf32Char > &str, Int &processed, const String &formatStatement, Bool &error)
     
    void ScanParameter (UInt64 &result, const Block< const Utf32Char > &str, Int &processed, const String &formatStatement, Bool &error)
     
    void ScanParameter (UInt32 &result, const Block< const Utf32Char > &str, Int &processed, const String &formatStatement, Bool &error)
     
    void ScanParameter (UInt16 &result, const Block< const Utf32Char > &str, Int &processed, const String &formatStatement, Bool &error)
     
    void ScanParameter (UChar &result, const Block< const Utf32Char > &str, Int &processed, const String &formatStatement, Bool &error)
     
    template<typename T >
    void ScanParameter (T *&result, const Block< const Utf32Char > &str, Int &processed, const String &formatStatement, Bool &error)
     
    template<typename T >
    void FromStrHlp (T *result, const Block< const Utf32Char > &str, Int &processed, const String &formatStatement, Bool &error)
     
    template<typename T >
    FROMSTR GetFromStrHlp ()
     
    Bool ScanStringTemplate (const String &str, const String &format, Int *parsedCharacters, Int argsCnt, void **args, FROMSTR *argFuncs)
     
    CString ExtractCString (StringProxy *proxy)
     
    template<Bool ISOKAY, typename T >
    MAXON_ATTRIBUTE_FORCE_INLINEForwardString (T &&str)
     
    template<typename STR , typename STR2 , typename... ARGS>
    Bool ScanString (STR inputStr, STR2 formatStr, ARGS &... args)
     
    template<typename STR , typename STR2 , typename... ARGS>
    Bool ScanString (STR inputStr, Int &parsedInputCharacters, STR2 formatStr, ARGS &... args)
     
    String _LoadResourceString (const Id &scope, const InternedId &keyValue)
     
    template<typename STRID , typename... ARGUMENTS>
    String LoadResourceString (const STRID &identifier, const ARGUMENTS &... args)
     
    static Int StrLen (const SysChar *chr)
     
    static Int StrLen (const Utf32Char *chr)
     
    static Int StrLen (const Utf16Char *chr)
     
    template<typename TYPE >
    MAXON_ATTRIBUTE_FORCE_INLINE Bool IsSpace (TYPE chr)
     
    template<typename TYPE >
    MAXON_ATTRIBUTE_FORCE_INLINE Bool IsTab (TYPE chr)
     
    template<typename TYPE >
    MAXON_ATTRIBUTE_FORCE_INLINE Bool IsSpaceOrTab (TYPE chr)
     
    template<typename TYPE >
    MAXON_ATTRIBUTE_FORCE_INLINE Bool IsLineEnd (TYPE chr)
     
    template<typename TYPE >
    MAXON_ATTRIBUTE_FORCE_INLINE Bool IsNumeric (TYPE chr)
     
    template<typename TYPE >
    MAXON_ATTRIBUTE_FORCE_INLINE Bool IsAlphabetic (TYPE chr)
     
    template<typename TYPE >
    MAXON_ATTRIBUTE_FORCE_INLINE Bool IsAlphanumeric (TYPE chr)
     
    template<typename TYPE >
    MAXON_ATTRIBUTE_FORCE_INLINE Bool IsHexadecimal (TYPE chr)
     
    template<typename TYPE >
    MAXON_ATTRIBUTE_FORCE_INLINE Int GetHexadecimalValue (TYPE chr)
     
    template<typename ITERATABLETYPE , typename REFTYPE >
    static MAXON_WARN_UNUSED REFTYPE JoinElements (ITERATABLETYPE &&iterable, const REFTYPE &delimiter, const FormatStatement *formatStr=nullptr)
     
    template<typename STRINGTYPE >
    void AppendStringWithSeparator (STRINGTYPE &base, const STRINGTYPE &add, const STRINGTYPE &delimiter)
     
    template<typename STRINGTYPE >
    STRINGTYPE AddStringWithSeparator (const STRINGTYPE &base, const STRINGTYPE &add, const STRINGTYPE &delimiter)
     

    Variables

     NONE
     
     ALLOW_MORE_CHARACTERS
     
     MEMORY
     
     UNICODE_LETTERS
     
     UNICODE_NUMBERS
     
     CASEINSENSITIVE
     
     CASEINSENSITIVE_NUMBERS
     
    static const Int STRING_MAXIMUM_PRECISION
     
    static const Int STRING_DYNAMIC_DIGITS
     

    Variable Documentation

    ◆ NONE

    NONE

    ◆ ALLOW_MORE_CHARACTERS

    ALLOW_MORE_CHARACTERS

    if the specified string is longer than the converted characters and you specify this flag no error will be returned

    ◆ MEMORY

    MEMORY

    default - fast comparison, memory block is directly compared. This does not result in a correct alphabetical order.

    ◆ UNICODE_LETTERS

    UNICODE_LETTERS

    strings are compared using correct unicode decomposition

    ◆ UNICODE_NUMBERS

    UNICODE_NUMBERS

    strings are compared using correct unicode decomposition. Numbers in strings are identified, so "2" is smaller than "10"

    ◆ CASEINSENSITIVE

    CASEINSENSITIVE

    strings are compared case-insensitive using correct unicode decomposition

    ◆ CASEINSENSITIVE_NUMBERS

    CASEINSENSITIVE_NUMBERS

    strings are compared case-insensitive using correct unicode decomposition. Numbers in strings are identified, so "2" is smaller than "10"