Wraps around a string to allow for faster case-insensitive string comparisons while
preserving original casing.
public struct InternedString : IEquatable<InternedString>, IComparable<InternedString>
Constructors
Initialize the InternedString with the given string. Except if the string is null
or empty, this requires an internal lookup (this is the reason the conversion from string
to InternedString is not implicit).
Declaration
public InternedString(string text)
Parameters
Type |
Name |
Description |
String |
text |
A string. Can be null.
|
Properties
Length of the string in characters. Equivalent to string.Length
.
Declaration
public readonly int length { get; }
Property Value
Type |
Description |
Int32 |
Length of the string.
|
Methods
Declaration
public int CompareTo(InternedString other)
Parameters
Returns
Implements
Compare the InternedString to given object.
Declaration
public override bool Equals(object obj)
Parameters
Type |
Name |
Description |
Object |
obj |
An object. If it is a string , performs a string comparison. If
it is an InternedString, performs an InternedString-comparison. Otherwise returns false.
|
Returns
Type |
Description |
Boolean |
True if the InternedString is equal to obj .
|
Overrides
Compare two InternedStrings for equality. They are equal if, ignoring case and culture,
their text is equal.
Declaration
public bool Equals(InternedString other)
Parameters
Returns
Type |
Description |
Boolean |
True if the two InternedStrings are equal.
|
Implements
Compute a hash code for the string. Equivalent to string.GetHashCode
.
Declaration
public override int GetHashCode()
Returns
Type |
Description |
Int32 |
A hash code.
|
Overrides
Whether the string is empty, i.e. has a length of zero. If so, the
InternedString corresponds to default(InternedString)
.
Declaration
Returns
Type |
Description |
Boolean |
True if the string is empty.
|
Return a lower-case version of the string.
Declaration
Returns
Type |
Description |
String |
A lower-case version of the string.
|
Declaration
public override string ToString()
Returns
Overrides
Operators
Declaration
public static bool operator ==(string a, InternedString b)
Parameters
Returns
Declaration
public static bool operator ==(InternedString a, string b)
Parameters
Returns
Declaration
public static bool operator ==(InternedString a, InternedString b)
Parameters
Returns
Declaration
public static bool operator>(InternedString left, InternedString right)
Parameters
Returns
Convert the given InternedString back to a string
. Equivalent to ToString().
Declaration
public static implicit operator string (InternedString str)
Parameters
Returns
Type |
Description |
String |
A string.
|
Declaration
public static bool operator !=(string a, InternedString b)
Parameters
Returns
Declaration
public static bool operator !=(InternedString a, string b)
Parameters
Returns
Declaration
public static bool operator !=(InternedString a, InternedString b)
Parameters
Returns
Declaration
public static bool operator <(InternedString left, InternedString right)
Parameters
Returns
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.