2020-02-22 13:59:09 +00:00
<?xml version="1.0" encoding="UTF-8" ?>
2022-02-14 13:18:53 +00:00
<class name= "StringName" version= "4.0" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation= "../class.xsd" >
2020-02-22 13:59:09 +00:00
<brief_description >
2020-03-03 18:21:21 +00:00
An optimized string type for unique names.
2020-02-22 13:59:09 +00:00
</brief_description>
<description >
2022-03-13 00:04:51 +00:00
[StringName]s are immutable strings designed for general-purpose representation of unique names (also called "string interning"). [StringName] ensures that only one instance of a given name exists (so two [StringName]s with the same value are the same object). Comparing them is much faster than with regular [String]s, because only the pointers are compared, not the whole strings.
You will usually just pass a [String] to methods expecting a [StringName] and it will be automatically converted, but you may occasionally want to construct a [StringName] ahead of time with [StringName] or the literal syntax [code]& "example"[/code].
See also [NodePath], which is a similar concept specifically designed to store pre-parsed node paths.
2020-02-22 13:59:09 +00:00
</description>
<tutorials >
</tutorials>
2021-09-21 02:49:02 +00:00
<constructors >
<constructor name= "StringName" >
2021-07-30 13:28:05 +00:00
<return type= "StringName" />
2020-11-09 16:46:03 +00:00
<description >
Constructs an empty [StringName].
</description>
2021-09-21 02:49:02 +00:00
</constructor>
<constructor name= "StringName" >
2021-07-30 13:28:05 +00:00
<return type= "StringName" />
<argument index= "0" name= "from" type= "StringName" />
2020-11-09 16:46:03 +00:00
<description >
Constructs a [StringName] as a copy of the given [StringName].
</description>
2021-09-21 02:49:02 +00:00
</constructor>
<constructor name= "StringName" >
2021-07-30 13:28:05 +00:00
<return type= "StringName" />
<argument index= "0" name= "from" type= "String" />
2020-02-22 13:59:09 +00:00
<description >
2022-03-13 00:04:51 +00:00
Creates a new [StringName] from the given [String]. [code]StringName("example")[/code] is equivalent to [code]& "example"[/code].
2020-02-22 13:59:09 +00:00
</description>
2021-09-21 02:49:02 +00:00
</constructor>
</constructors>
2022-06-06 09:19:56 +00:00
<methods >
<method name= "hash" qualifiers= "const" >
<return type= "int" />
<description >
Returns the 32-bit hash value representing the [StringName]'s contents.
</description>
</method>
</methods>
2021-09-21 02:49:02 +00:00
<operators >
<operator name= "operator !=" >
2021-07-30 13:28:05 +00:00
<return type= "bool" />
<argument index= "0" name= "right" type= "String" />
2020-11-10 13:16:20 +00:00
<description >
</description>
2021-09-21 02:49:02 +00:00
</operator>
<operator name= "operator !=" >
2021-07-30 13:28:05 +00:00
<return type= "bool" />
<argument index= "0" name= "right" type= "StringName" />
2020-11-10 13:16:20 +00:00
<description >
</description>
2021-09-21 02:49:02 +00:00
</operator>
2022-02-08 07:49:14 +00:00
<operator name= "operator <" >
<return type= "bool" />
<argument index= "0" name= "right" type= "StringName" />
<description >
</description>
</operator>
<operator name= "operator <=" >
<return type= "bool" />
<argument index= "0" name= "right" type= "StringName" />
<description >
</description>
</operator>
2021-09-21 02:49:02 +00:00
<operator name= "operator ==" >
2021-07-30 13:28:05 +00:00
<return type= "bool" />
<argument index= "0" name= "right" type= "String" />
2020-11-10 13:16:20 +00:00
<description >
</description>
2021-09-21 02:49:02 +00:00
</operator>
<operator name= "operator ==" >
2021-07-30 13:28:05 +00:00
<return type= "bool" />
<argument index= "0" name= "right" type= "StringName" />
2020-11-10 13:16:20 +00:00
<description >
</description>
2021-09-21 02:49:02 +00:00
</operator>
2022-02-08 07:49:14 +00:00
<operator name= "operator >" >
<return type= "bool" />
<argument index= "0" name= "right" type= "StringName" />
<description >
</description>
</operator>
<operator name= "operator >=" >
<return type= "bool" />
<argument index= "0" name= "right" type= "StringName" />
<description >
</description>
</operator>
2021-09-21 02:49:02 +00:00
</operators>
2020-02-22 13:59:09 +00:00
</class>