233 references to Offset
System (233)
net\System\URI.cs (221)
332char ch = m_String[m_Info.Offset.Path]; 1048start = IsUncPath? m_Info.Offset.Host-2 :m_Info.Offset.Path; 1050string str = (IsImplicitFile && m_Info.Offset.Host == (IsDosPath ? 0 : 2) && 1051m_Info.Offset.Query == m_Info.Offset.End) 1054? m_String.Substring(start + 1, m_Info.Offset.Query - start - 1) 1055: m_String.Substring(start, m_Info.Offset.Query - start); 1079start = m_Info.Offset.Path; 1082result = new char [host.Length + 3 + m_Info.Offset.Fragment - m_Info.Offset.Path ]; 1107UriHelper.UnescapeString(m_String, start, m_Info.Offset.Query, result, ref count, c_DummyChar, 1158return (int)m_Info.Offset.PortValue; 1809ushort i1 = m_Info.Offset.Host; 1810ushort end1 = m_Info.Offset.Path; 1812ushort i2 = obj.m_Info.Offset.Host; 1813ushort end2 = obj.m_Info.Offset.Path; 1832if (i1 < m_Info.Offset.Path && m_String[i1] != ':') { 2270info.Offset.End = (ushort)m_String.Length; 2284++info.Offset.Scheme; 2303++info.Offset.Scheme; 2327info.Offset.PortValue = (ushort)m_Syntax.DefaultPort; 2336info.Offset.User = (ushort) (cF & Flags.IndexMask); 2337info.Offset.Host = info.Offset.User; 2338info.Offset.Path = info.Offset.User; 2346info.Offset.User = idx; 2350info.Offset.Host = idx; 2351info.Offset.Path = (ushort) (cF & Flags.IndexMask); 2362info.Offset.Host = idx; 2365info.Offset.Host = idx; 2382info.Offset.Path = idx; 2396info.Offset.End = (ushort)m_originalUnicodeString.Length; 2398if (idx < info.Offset.End ){ 2404if (++idx < info.Offset.End){ 2412for (++idx; idx < info.Offset.End; ++idx){ 2422if (notEmpty && info.Offset.PortValue != (ushort)port){ 2423info.Offset.PortValue = (ushort)port; 2431info.Offset.Path = (ushort)idx; 2486string host = CreateHostStringHelper(m_String, m_Info.Offset.Host, m_Info.Offset.Path, ref flags, ref m_Info.ScopeId); 2540if ((m_Info.Offset.Host + i) >= m_Info.Offset.End || 2541host[i] != m_String[m_Info.Offset.Host + i]) { 2656if ((m_Info.Offset.Host + i) >= m_Info.Offset.End || host[i] != m_String[m_Info.Offset.Host + i]) { 2674m_Info.Offset.PortValue = 0; 2684if (port != m_Info.Offset.PortValue) 2692m_Info.Offset.PortValue = (ushort) port; 2723else if (IsDosPath && m_String[m_Info.Offset.Path + SecuredPathIndex - 1] == '|') { 2750else if (IsDosPath && m_String[m_Info.Offset.Path + SecuredPathIndex - 1] == '|') { 2780int count = (m_Info.Offset.End-m_Info.Offset.User) * (formatAs == UriFormat.UriEscaped?12:1); 2805chars = UriHelper.EscapeString(m_String, m_Info.Offset.User, m_Info.Offset.Host, chars, 2813m_String.CopyTo(m_Info.Offset.User, chars, count, m_Info.Offset.Host - m_Info.Offset.User); 2814count += (m_Info.Offset.Host - m_Info.Offset.User); 2819chars = UriHelper.UnescapeString(m_String, m_Info.Offset.User, m_Info.Offset.Host - 1, 2826chars = UriHelper.UnescapeString(m_String, m_Info.Offset.User, m_Info.Offset.Host, chars, 2832chars = UriHelper.UnescapeString(m_String, m_Info.Offset.User, m_Info.Offset.Host, chars, 2839UriHelper.UnescapeString(m_String, m_Info.Offset.User, m_Info.Offset.Host, chars, ref count, 2904ushort start = m_Info.Offset.Path; 2908m_String.CopyTo(start, chars, count, m_Info.Offset.Path - start); 2909count += (m_Info.Offset.Path - start); 2913stemp = m_Info.Offset.PortValue.ToString(CultureInfo.InvariantCulture); 2922stemp = m_Info.Offset.PortValue.ToString(CultureInfo.InvariantCulture); 2951if ((parts & UriComponents.Query) != 0 && m_Info.Offset.Query < m_Info.Offset.Fragment) 2953delimiterAwareIndex = (ushort)(m_Info.Offset.Query+1); 2964chars = UriHelper.EscapeString(m_String, delimiterAwareIndex, m_Info.Offset.Fragment, chars, 2971UriHelper.UnescapeString(m_String, delimiterAwareIndex, m_Info.Offset.Fragment, chars, 2979chars = UriHelper.UnescapeString(m_String, delimiterAwareIndex, m_Info.Offset.Fragment, chars, 2987chars = UriHelper.UnescapeString(m_String, delimiterAwareIndex, m_Info.Offset.Fragment, chars, 2994chars = UriHelper.UnescapeString(m_String, delimiterAwareIndex, m_Info.Offset.Fragment, chars, 3002UriHelper.UnescapeString(m_String, delimiterAwareIndex, m_Info.Offset.Fragment, chars, ref count, 3008if ((parts & UriComponents.Fragment) != 0 && m_Info.Offset.Fragment < m_Info.Offset.End) 3010delimiterAwareIndex = (ushort)(m_Info.Offset.Fragment+1); 3019chars = UriHelper.EscapeString(m_String, delimiterAwareIndex, m_Info.Offset.End, chars, 3026UriHelper.UnescapeString(m_String, delimiterAwareIndex, m_Info.Offset.End, chars, 3034chars = UriHelper.UnescapeString(m_String, delimiterAwareIndex, m_Info.Offset.End, chars, 3041chars = UriHelper.UnescapeString(m_String, delimiterAwareIndex, m_Info.Offset.End, chars, 3048chars = UriHelper.UnescapeString(m_String, delimiterAwareIndex, m_Info.Offset.End, chars, 3056UriHelper.UnescapeString(m_String, delimiterAwareIndex, m_Info.Offset.End, chars, ref count, 3076return m_String.Substring(m_Info.Offset.Scheme, m_Info.Offset.Path - m_Info.Offset.Scheme); 3078return m_String.Substring(m_Info.Offset.Scheme, m_Info.Offset.User - m_Info.Offset.Scheme) 3079+ m_String.Substring(m_Info.Offset.Host, m_Info.Offset.Path - m_Info.Offset.Host); 3088return m_String.Substring(m_Info.Offset.Host, m_Info.Offset.Path - m_Info.Offset.Host); 3090return m_String.Substring(m_Info.Offset.Host, m_Info.Offset.Path - m_Info.Offset.Host) 3091+ ':' + m_Info.Offset.PortValue.ToString(CultureInfo.InvariantCulture); 3095if (m_Info.Offset.Scheme == 0 && m_Info.Offset.End == m_String.Length) 3098return m_String.Substring(m_Info.Offset.Scheme, m_Info.Offset.End - m_Info.Offset.Scheme); 3103return m_String.Substring(m_Info.Offset.Scheme, m_Info.Offset.User - m_Info.Offset.Scheme) 3104+ m_String.Substring(m_Info.Offset.Host, m_Info.Offset.Fragment - m_Info.Offset.Host); 3106if (m_Info.Offset.Scheme == 0 && m_Info.Offset.Fragment == m_String.Length) 3109return m_String.Substring(m_Info.Offset.Scheme, m_Info.Offset.Fragment - m_Info.Offset.Scheme); 3113return m_String.Substring(m_Info.Offset.Scheme, m_Info.Offset.Path - m_Info.Offset.Scheme); 3117if (m_Info.Offset.Scheme == 0 && m_Info.Offset.Fragment == m_String.Length) 3120return m_String.Substring(m_Info.Offset.Scheme, m_Info.Offset.Fragment - m_Info.Offset.Scheme); 3126return m_String.Substring(m_Info.Offset.Scheme, m_Info.Offset.User - m_Info.Offset.Scheme); 3132ushort idx = m_Info.Offset.Path; 3138return (idx - m_Info.Offset.Host == 0)? string.Empty: m_String.Substring(m_Info.Offset.Host, 3139idx - m_Info.Offset.Host); 3145m_Info.Offset.End > m_Info.Offset.Path && m_String[m_Info.Offset.Path] == '/') 3146delimiterAwareIdx = (ushort)(m_Info.Offset.Path + 1); 3148delimiterAwareIdx = m_Info.Offset.Path; 3150if (delimiterAwareIdx >= m_Info.Offset.Query) 3154return m_String.Substring(delimiterAwareIdx, m_Info.Offset.Query - delimiterAwareIdx); 3159delimiterAwareIdx = (ushort)(m_Info.Offset.Query + 1); 3161delimiterAwareIdx = m_Info.Offset.Query; 3163if (delimiterAwareIdx >= m_Info.Offset.Fragment) 3166return m_String.Substring(delimiterAwareIdx, m_Info.Offset.Fragment - delimiterAwareIdx); 3171delimiterAwareIdx = (ushort)(m_Info.Offset.Fragment + 1); 3173delimiterAwareIdx = m_Info.Offset.Fragment; 3175if (delimiterAwareIdx >= m_Info.Offset.End) 3178return m_String.Substring(delimiterAwareIdx, m_Info.Offset.End - delimiterAwareIdx); 3181return (m_Info.Offset.Path - m_Info.Offset.User == 0) ? string.Empty : 3182m_String.Substring(m_Info.Offset.User, m_Info.Offset.Path - m_Info.Offset.User); 3188return m_String.Substring(m_Info.Offset.User, m_Info.Offset.Path - m_Info.Offset.User) 3189+ ':' + m_Info.Offset.PortValue.ToString(CultureInfo.InvariantCulture); 3192return m_String.Substring(m_Info.Offset.Path, m_Info.Offset.Fragment - m_Info.Offset.Path); 3196return m_String.Substring(m_Info.Offset.Scheme, m_Info.Offset.User - m_Info.Offset.Scheme) 3197+ m_String.Substring(m_Info.Offset.Host, m_Info.Offset.End - m_Info.Offset.Host); 3199if (m_Info.Offset.Scheme == 0 && m_Info.Offset.End == m_String.Length) 3202return m_String.Substring(m_Info.Offset.Scheme, m_Info.Offset.End - m_Info.Offset.Scheme); 3205return m_String.Substring(m_Info.Offset.Path, m_Info.Offset.End - m_Info.Offset.Path); 3214delimiterAwareIdx = (ushort)(m_Info.Offset.Host - 1); 3216delimiterAwareIdx = m_Info.Offset.Host; 3218if (m_Info.Offset.User >= delimiterAwareIdx) 3221return m_String.Substring(m_Info.Offset.User, delimiterAwareIdx - m_Info.Offset.User); 3252ushort idx = m_Info.Offset.Scheme; 3293idx = m_Info.Offset.User; 3294result = CheckCanonical(str, ref idx, m_Info.Offset.Host, '@'); 3325idx = m_Info.Offset.Path; 3326origIdx = m_Info.Offset.Path; 3343m_Info.Offset.Path = (ushort)m_String.Length; 3344idx = m_Info.Offset.Path; 3399&& (m_Info.Offset.Path == length || (str[m_Info.Offset.Path] != '/' && str[m_Info.Offset.Path] != '\\'))){ 3501m_Info.Offset.Query = idx; 3559m_Info.Offset.Fragment = idx; 3582m_Info.Offset.End = idx; 4579if (m_Info.Offset.Path == m_Info.Offset.Query) 4593m_String.CopyTo(m_Info.Offset.Path, dest, end, m_Info.Offset.Query - m_Info.Offset.Path); 4594end += (m_Info.Offset.Query - m_Info.Offset.Path); 4616if (dosPathIdx != 0 && str[dosPathIdx + m_Info.Offset.Path -1] == '|') 4618str = str.Remove(dosPathIdx + m_Info.Offset.Path -1, 1); 4619str = str.Insert(dosPathIdx + m_Info.Offset.Path -1, ":"); 4621dest = UriHelper.EscapeString(str, m_Info.Offset.Path, m_Info.Offset.Query, dest, ref end, true, 4625m_String.CopyTo(m_Info.Offset.Path, dest, end, m_Info.Offset.Query - m_Info.Offset.Path); 4626end += (m_Info.Offset.Query - m_Info.Offset.Path); 4632m_String.CopyTo(m_Info.Offset.Path, dest, end, m_Info.Offset.Query - m_Info.Offset.Path); 4633end += (m_Info.Offset.Query - m_Info.Offset.Path);
net\System\UriExt.cs (12)
526idx = (ushort)(m_Info.Offset.Scheme + m_Syntax.SchemeName.Length + 2); 527if (idx >= m_Info.Offset.User || m_String[idx - 1] == '\\' || m_String[idx] == '\\') 533while (++idx < m_Info.Offset.User && (m_String[idx] == '/' || m_String[idx] == '\\')) 544if (InFact(Flags.FirstSlashAbsent) && m_Info.Offset.Query > m_Info.Offset.Path) 554if (IsDosPath && m_String[m_Info.Offset.Path + SecuredPathIndex - 1] == '|') 566idx = m_Info.Offset.User; 567Check result = CheckCanonical(str, ref idx, (ushort)m_Info.Offset.Path, '/'); 897return m_Info.Offset.PortValue.ToString(CultureInfo.InvariantCulture); 1004int portIndex = otherUri.m_Info.Offset.Path; 1008while (otherUri.m_String[portIndex] != ':' && portIndex > otherUri.m_Info.Offset.Host) 1016portIndex = otherUri.m_Info.Offset.Path;