Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ Join() [4/7]

static string System.String.Join ( string? separator,
IEnumerable< string?> values )
inlinestatic

Definition at line 2035 of file String.cs.

2036 {
2038 {
2039 return JoinCore(separator.AsSpan(), CollectionsMarshal.AsSpan(list));
2040 }
2041 if (values is string[] array)
2042 {
2043 return JoinCore(separator.AsSpan(), new ReadOnlySpan<string>(array));
2044 }
2045 if (values == null)
2046 {
2047 ThrowHelper.ThrowArgumentNullException(ExceptionArgument.values);
2048 }
2049 using IEnumerator<string> enumerator = values.GetEnumerator();
2050 if (!enumerator.MoveNext())
2051 {
2052 return Empty;
2053 }
2054 string current = enumerator.Current;
2055 if (!enumerator.MoveNext())
2056 {
2057 return current ?? Empty;
2058 }
2061 valueStringBuilder.Append(current);
2062 do
2063 {
2065 valueStringBuilder.Append(enumerator.Current);
2066 }
2067 while (enumerator.MoveNext());
2068 return valueStringBuilder.ToString();
2069 }
static string JoinCore(ReadOnlySpan< char > separator, string[] value, int startIndex, int count)
Definition String.cs:2014
static readonly string Empty
Definition String.cs:29

References System.array, System.String.Empty, System.Collections.Generic.Dictionary< TKey, TValue >.GetEnumerator(), System.String.JoinCore(), System.list, System.ThrowHelper.ThrowArgumentNullException(), and System.values.