public string Get(char[] key, int start, int length)
        {
            if (length == 0)
            {
                return(string.Empty);
            }
            int num1 = length + PropertyNameTable.HashCodeRandomizer;
            int num2 = num1 + (num1 << 7 ^ (int)key[start]);
            int num3 = start + length;

            for (int index = start + 1; index < num3; ++index)
            {
                num2 += num2 << 7 ^ (int)key[index];
            }
            int num4 = num2 - (num2 >> 17);
            int num5 = num4 - (num4 >> 11);
            int num6 = num5 - (num5 >> 5);

            for (PropertyNameTable.Entry entry = this._entries[num6 & this._mask]; entry != null; entry = entry.Next)
            {
                if (entry.HashCode == num6 && PropertyNameTable.TextEquals(entry.Value, key, start, length))
                {
                    return(entry.Value);
                }
            }
            return((string)null);
        }
Exemplo n.º 2
0
        public string Get(char[] key, int start, int length)
        {
            if (length == 0)
            {
                return(string.Empty);
            }
            int num = length + PropertyNameTable.HashCodeRandomizer;

            num = num + (num << 7 ^ key[start]);
            int num1 = start + length;

            for (int i = start + 1; i < num1; i++)
            {
                num = num + (num << 7 ^ key[i]);
            }
            num = num - (num >> 17);
            num = num - (num >> 11);
            num = num - (num >> 5);
            for (PropertyNameTable.Entry j = this._entries[num & this._mask]; j != null; j = j.Next)
            {
                if (j.HashCode == num && PropertyNameTable.TextEquals(j.Value, key, start, length))
                {
                    return(j.Value);
                }
            }
            return(null);
        }
Exemplo n.º 3
0
 // Token: 0x06000CB2 RID: 3250
 // RVA: 0x0000D8C4 File Offset: 0x0000BAC4
 internal Entry(string value, int hashCode, PropertyNameTable.Entry next)
 {
     this.Value = value;
     this.HashCode = hashCode;
     this.Next = next;
 }