예제 #1
0
        public bool Equals(AsciiString other)
        {
            if (ReferenceEquals(this, other))
            {
                return(true);
            }

            return(other is object && this.length == other.length &&
                   this.GetHashCode() == other.GetHashCode() &&
                   this.AsciiSpan.SequenceEqual(other.AsciiSpan));
        }
예제 #2
0
 public int HashCode(ICharSequence obj) => AsciiString.GetHashCode(obj);
예제 #3
0
        public static bool EndsWith(this AsciiString ascii, ICharSequence suffix)
        {
            int suffixLen = suffix.Count;

            return(ascii.RegionMatches(ascii.Count - suffixLen, suffix, 0, suffixLen) ? true : false);
        }
예제 #4
0
 public static int LastIndexOf(this AsciiString ascii, ICharSequence charSequence) => ascii.LastIndexOf(charSequence, ascii.Count);
예제 #5
0
 public static int IndexOf(this AsciiString ascii, ICharSequence sequence) => ascii.IndexOf(sequence, 0);
예제 #6
0
 public static bool Contains(this AsciiString ascii, ICharSequence sequence) => (SharedConstants.TooBigOrNegative >= (uint)ascii.IndexOf(sequence)) ? true : false;
예제 #7
0
 public static char[] ToCharArray(this AsciiString ascii) => ascii.ToCharArray(0, ascii.Count);
예제 #8
0
 public static byte[] ToByteArray(this AsciiString ascii) => ascii.ToByteArray(0, ascii.Count);