The Utility interface provides utility functions. It looks like this:

class UIMGUI_PUBLIC_API Utility
{
public:
    static void sanitiseFilepath(FString& str) noexcept;

    static void keyToText(FString& text, const uint16_t& key, bool bLong) noexcept;
    static FString keyToText(const uint16_t& key, bool bLong) noexcept;
    static void keyToText(FString& text, const InputAction& action, bool bLong) noexcept;
    static FString keyToText(const InputAction& action, bool bLong) noexcept;

    // DO NOT USE THIS, THIS IS ONLY HERE FOR INTERNAL REASONS!!! REALLY KNOW WHAT YOU'RE DOING WHEN USING THIS
    static Global& getGlobal() noexcept;

    static void removeConsole() noexcept;

    static FString toLower(String str) noexcept;
    static void toLower(FString& str) noexcept;

    static FString toUpper(String str) noexcept;
    static void toUpper(FString& str) noexcept;

    static void sleep(uint64_t milliseconds) noexcept;
};

Reference for the functions:

  1. toUpper - Converts a string to all uppercase characters
  2. toLower - Converts a string to all lowercase characters
  3. removeConsole - Removes the console window on Windows
  4. getGlobal - Returns a reference to the internal global class, DO NOT TOUCH!!!
  5. keyToText - Converts a key code to text in short or long form for usage in UI
  6. sanitizeFilepath - Sanitizes file paths, such as replacing \ with / on Windows
  7. sleep - Puts the current thread to sleep for X milliseconds

Event safety

The whole interface is flagged as event safe at Any time.

C API

The C API is severely downsized, by removing most string operation functions. It uses the standard C API development rules as defined here. It looks like this:

// Event Safety - Any time
UIMGUI_PUBLIC_API UImGui_String UImGui_Utility_sanitiseFilepath(UImGui_String str);

// Event Safety - Any time
UIMGUI_PUBLIC_API UImGui_String UImGui_Utility_keyToText(uint16_t key, bool bLong);

// Event Safety - Any time
UIMGUI_PUBLIC_API UImGui_String UImGui_Utility_keyToTextInputAction(UImGui_CInputAction* action, bool bLong);

// Event Safety - Any time
UIMGUI_PUBLIC_API void UImGui_Utility_removeConsole();

// Event Safety - Any time
// Sleep for X milliseconds
UIMGUI_PUBLIC_API void UImGui_Utility_sleep(uint64_t milliseconds);

As can be seen, most keyToText and all toUpper and toLower functions are removed. Since the C API is only available for the public API, the getGlobal function is also not available.