Represents a string identifier, designed for accessing properties by name. More...
#include <juce_Identifier.h>
Public Member Functions | |
Identifier () noexcept | |
Creates a null identifier. More... | |
Identifier (const char *name) | |
Creates an identifier with a specified name. More... | |
Identifier (const String &name) | |
Creates an identifier with a specified name. More... | |
Identifier (String::CharPointerType nameStart, String::CharPointerType nameEnd) | |
Creates an identifier with a specified name. More... | |
Identifier (const Identifier &other) noexcept | |
Creates a copy of another identifier. More... | |
Identifier (Identifier &&other) noexcept | |
Creates a copy of another identifier. More... | |
~Identifier () noexcept | |
Destructor. More... | |
String::CharPointerType | getCharPointer () const noexcept |
Returns this identifier's raw string pointer. More... | |
bool | isNull () const noexcept |
Returns true if this Identifier is null. More... | |
bool | isValid () const noexcept |
Returns true if this Identifier is not null. More... | |
operator String::CharPointerType () const noexcept | |
Returns this identifier's raw string pointer. More... | |
operator StringRef () const noexcept | |
Returns this identifier as a StringRef. More... | |
bool | operator!= (const Identifier &other) const noexcept |
Compares two identifiers. More... | |
bool | operator!= (StringRef other) const noexcept |
Compares the identifier with a string. More... | |
bool | operator< (StringRef other) const noexcept |
Compares the identifier with a string. More... | |
bool | operator<= (StringRef other) const noexcept |
Compares the identifier with a string. More... | |
Identifier & | operator= (const Identifier &other) noexcept |
Creates a copy of another identifier. More... | |
Identifier & | operator= (Identifier &&other) noexcept |
Creates a copy of another identifier. More... | |
bool | operator== (const Identifier &other) const noexcept |
Compares two identifiers. More... | |
bool | operator== (StringRef other) const noexcept |
Compares the identifier with a string. More... | |
bool | operator> (StringRef other) const noexcept |
Compares the identifier with a string. More... | |
bool | operator>= (StringRef other) const noexcept |
Compares the identifier with a string. More... | |
const String & | toString () const noexcept |
Returns this identifier as a string. More... | |
Static Public Member Functions | |
static bool | isValidIdentifier (const String &possibleIdentifier) noexcept |
Checks a given string for characters that might not be valid in an Identifier. More... | |
Static Public Attributes | |
static Identifier | null |
A null identifier. More... | |
Private Attributes | |
String | name |
Represents a string identifier, designed for accessing properties by name.
Comparing two Identifier objects is very fast (an O(1) operation), but creating them can be slower than just using a String directly, so the optimal way to use them is to keep some static Identifier objects for the things you use often.
{Core}
|
noexcept |
Creates a null identifier.
juce::Identifier::Identifier | ( | const char * | name | ) |
Creates an identifier with a specified name.
Because this name may need to be used in contexts such as script variables or XML tags, it must only contain ascii letters and digits, or the underscore character.
juce::Identifier::Identifier | ( | const String & | name | ) |
Creates an identifier with a specified name.
Because this name may need to be used in contexts such as script variables or XML tags, it must only contain ascii letters and digits, or the underscore character.
juce::Identifier::Identifier | ( | String::CharPointerType | nameStart, |
String::CharPointerType | nameEnd | ||
) |
Creates an identifier with a specified name.
Because this name may need to be used in contexts such as script variables or XML tags, it must only contain ascii letters and digits, or the underscore character.
|
noexcept |
Creates a copy of another identifier.
|
noexcept |
Creates a copy of another identifier.
|
noexcept |
Destructor.
|
inlinenoexcept |
Returns this identifier's raw string pointer.
References juce::String::getCharPointer().
|
inlinenoexcept |
Returns true if this Identifier is null.
References juce::String::isEmpty().
|
inlinenoexcept |
Returns true if this Identifier is not null.
References juce::String::isNotEmpty().
Checks a given string for characters that might not be valid in an Identifier.
Since Identifiers are used as a script variables and XML attributes, they should only contain alphanumeric characters, underscores, or the '-' and ':' characters.
|
inlinenoexcept |
Returns this identifier's raw string pointer.
References juce::String::getCharPointer().
|
inlinenoexcept |
Returns this identifier as a StringRef.
|
inlinenoexcept |
Compares two identifiers.
This is a very fast operation.
References juce::String::getCharPointer(), and name.
Compares the identifier with a string.
Compares the identifier with a string.
Compares the identifier with a string.
|
noexcept |
Creates a copy of another identifier.
|
noexcept |
Creates a copy of another identifier.
|
inlinenoexcept |
Compares two identifiers.
This is a very fast operation.
References juce::String::getCharPointer(), and name.
Compares the identifier with a string.
Compares the identifier with a string.
Compares the identifier with a string.
|
inlinenoexcept |
Returns this identifier as a string.
|
private |
Referenced by operator!=(), and operator==().
|
static |
A null identifier.