internal SplitResult(Utf8Span source, Rune searchRune, Utf8StringSplitOptions splitOptions) { _state = new State { RemainingSearchSpace = source, SearchRune = searchRune.Value, SearchTerm = default,
private static void CheckSplitOptions(Utf8StringSplitOptions options) { if ((uint)options > (uint)(Utf8StringSplitOptions.RemoveEmptyEntries | Utf8StringSplitOptions.TrimEntries)) { CheckSplitOptions_Throw(options); } }
internal SplitResult(Utf8String source, Rune searchRune, Utf8StringSplitOptions splitOptions) { _state = new State { FullSearchSpace = source, OffsetAtWhichToContinueSearch = 0, SearchRune = searchRune.Value, SearchTerm = default,
public SplitResult Split(Utf8Span separator, Utf8StringSplitOptions options = Utf8StringSplitOptions.None) { if (separator.IsEmpty) { throw new ArgumentException( paramName: nameof(separator), message: SR.Argument_CannotBeEmptySpan); } Utf8String.CheckSplitOptions(options); return(new SplitResult(this, separator, options)); }
public SplitResult Split(char separator, Utf8StringSplitOptions options = Utf8StringSplitOptions.None) { if (!Rune.TryCreate(separator, out Rune rune)) { throw new ArgumentOutOfRangeException( paramName: nameof(separator), message: SR.ArgumentOutOfRange_Utf16SurrogatesDisallowed); } Utf8String.CheckSplitOptions(options); return(new SplitResult(this, rune, options)); }
public SplitResult Split(Utf8String separator, Utf8StringSplitOptions options = Utf8StringSplitOptions.None) { if (IsNullOrEmpty(separator)) { throw new ArgumentException( paramName: nameof(separator), message: SR.Argument_CannotBeNullOrEmpty); } CheckSplitOptions(options); return(new SplitResult(this, separator, options)); }
public SplitResult Split(Rune separator, Utf8StringSplitOptions options = Utf8StringSplitOptions.None) { Utf8String.CheckSplitOptions(options); return(new SplitResult(this, separator, options)); }
private static void CheckSplitOptions_Throw(Utf8StringSplitOptions options) { throw new ArgumentOutOfRangeException( paramName: nameof(options), message: SR.Format(SR.Arg_EnumIllegalVal, (int)options)); }