BNM 2.4.0
 
Loading...
Searching...
No Matches
BNM::Structures::Mono::String Struct Reference

String type implementation. More...

#include <BasicMonoStructures.hpp>

Public Member Functions

std::string str ()
 Convert Mono::String to std::string.
 
unsigned int GetHash () const
 Calculate string hash.
 
bool SelfCheck () const
 Check if string isn't null.
 
bool IsNullOrEmpty () const
 Check if string is not null or not empty.
 

Static Public Member Functions

static StringEmpty ()
 Get empty string.
 

Public Attributes

int length {}
 
IL2CPP::Il2CppChar chars [0]
 

Detailed Description

String type implementation.

Member Function Documentation

◆ Empty()

static String * BNM::Structures::Mono::String::Empty ( )
static

Get empty string.

Gets C# empty string.

Returns
Empty string if it's found, otherwise null.

◆ GetHash()

unsigned int BNM::Structures::Mono::String::GetHash ( ) const
nodiscard

Calculate string hash.

Calculates string's hash like it's done in il2cpp VM.

Returns
Hash of string if it's valid, otherwise zero.

◆ IsNullOrEmpty()

bool BNM::Structures::Mono::String::IsNullOrEmpty ( ) const
inline

Check if string is not null or not empty.

Returns
True if string is not null and not empty.

◆ SelfCheck()

bool BNM::Structures::Mono::String::SelfCheck ( ) const
nodiscard

Check if string isn't null.

Checks if string isn't null and logs if it's null. It's used mostly internally in debug builds to crash proof code.

Returns
True if string isn't null.

◆ str()

std::string BNM::Structures::Mono::String::str ( )

Convert Mono::String to std::string.

Converts C#'s UTF16 string to C++'s UTF8 string.

Returns
Converted string if it's valid, otherwise "ERROR: Mono::String dead".