virtualx-engine/doc/classes/StringName.xml

93 lines
3.3 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<class name="StringName" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
<brief_description>
An optimized string type for unique names.
</brief_description>
<description>
[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]&amp;"example"[/code].
See also [NodePath], which is a similar concept specifically designed to store pre-parsed node paths.
</description>
<tutorials>
</tutorials>
<constructors>
<constructor name="StringName">
<return type="StringName" />
<description>
Constructs an empty [StringName].
</description>
</constructor>
<constructor name="StringName">
<return type="StringName" />
<param index="0" name="from" type="StringName" />
<description>
Constructs a [StringName] as a copy of the given [StringName].
</description>
</constructor>
<constructor name="StringName">
<return type="StringName" />
<param index="0" name="from" type="String" />
<description>
Creates a new [StringName] from the given [String]. [code]StringName("example")[/code] is equivalent to [code]&amp;"example"[/code].
</description>
</constructor>
</constructors>
<methods>
<method name="hash" qualifiers="const">
<return type="int" />
<description>
Returns the 32-bit hash value representing the [StringName]'s contents.
</description>
</method>
</methods>
<operators>
<operator name="operator !=">
<return type="bool" />
<param index="0" name="right" type="String" />
<description>
</description>
</operator>
<operator name="operator !=">
<return type="bool" />
<param index="0" name="right" type="StringName" />
<description>
</description>
</operator>
<operator name="operator &lt;">
<return type="bool" />
<param index="0" name="right" type="StringName" />
<description>
</description>
</operator>
<operator name="operator &lt;=">
<return type="bool" />
<param index="0" name="right" type="StringName" />
<description>
</description>
</operator>
<operator name="operator ==">
<return type="bool" />
<param index="0" name="right" type="String" />
<description>
</description>
</operator>
<operator name="operator ==">
<return type="bool" />
<param index="0" name="right" type="StringName" />
<description>
</description>
</operator>
<operator name="operator &gt;">
<return type="bool" />
<param index="0" name="right" type="StringName" />
<description>
</description>
</operator>
<operator name="operator &gt;=">
<return type="bool" />
<param index="0" name="right" type="StringName" />
<description>
</description>
</operator>
</operators>
</class>