We need you! We're working hard on the next version of Developer Fusion -
Let us know what you think we should be up to!
-
Expand
Microsoft.Win32
-
Expand
Microsoft.Win32.SafeHandles
-
Expand
System
-
Expand
System.Runtime.Hosting
-
Expand
System.Runtime.InteropServices
-
Expand
System.Runtime.CompilerServices
-
Expand
System.Collections
-
Expand
System.Collections.Generic
-
Expand
System.Collections.ObjectModel
-
Expand
System.Configuration.Assemblies
-
Expand
System.Diagnostics
-
Expand
System.Diagnostics.CodeAnalysis
-
Expand
System.Diagnostics.SymbolStore
-
Expand
System.Globalization
-
Expand
System.IO
-
Expand
System.IO.IsolatedStorage
-
Expand
System.Reflection
-
Expand
System.Reflection.Cache
-
Expand
System.Reflection.Emit
-
Expand
System.Resources
-
Expand
FastResourceComparer
-
Compare(object, object)
-
Compare(string, string)
-
CompareOrdinal(byte, int, string)
-
CompareOrdinal(byte, int, string)
-
CompareOrdinal(string, byte, int)
-
Equals(object, object)
-
Equals(string, string)
-
GetHashCode(object)
-
GetHashCode(string)
-
HashFunction(string)
-
Expand
IResourceReader
-
Expand
IResourceWriter
-
Expand
MissingManifestResourceException
-
Expand
MissingSatelliteAssemblyException
-
Expand
NeutralResourcesLanguageAttribute
-
Expand
PrecannedResource
-
Expand
ResourceEnumerator
-
Expand
ResourceLocator
-
Expand
ResourceManager
-
Expand
ResourceReader
-
Expand
ResourceSet
-
Expand
ResourceTypeCode
-
Expand
ResourceWriter
-
Expand
RuntimeResourceSet
-
Expand
SatelliteContractVersionAttribute
-
Expand
UltimateResourceFallbackLocation
-
Expand
System.Runtime
-
Expand
System.Runtime.InteropServices.Expando
-
Expand
System.Runtime.ConstrainedExecution
-
Expand
System.Runtime.Remoting.Activation
-
Expand
System.Runtime.Remoting.Messaging
-
Expand
System.Runtime.Remoting.Channels
-
Expand
System.Runtime.Remoting.Lifetime
-
Expand
System.Runtime.Remoting
-
Expand
System.Runtime.Remoting.Contexts
-
Expand
System.Runtime.Remoting.Proxies
-
Expand
System.Runtime.Remoting.Metadata
-
Expand
System.Runtime.Remoting.Metadata.W3cXsd2001
-
Expand
System.Runtime.Remoting.Services
-
Expand
System.Runtime.Serialization
-
Expand
System.Runtime.Serialization.Formatters
-
Expand
System.Runtime.Serialization.Formatters.Binary
-
Expand
System.Runtime.Versioning
-
Expand
System.Security
-
Expand
System.Security.Cryptography
-
Expand
System.Security.Cryptography.X509Certificates
-
Expand
System.Security.Permissions
-
Expand
System.Security.Policy
-
Expand
System.Security.Principal
-
Expand
System.Security.Util
-
Expand
System.Text
-
Expand
System.Threading
-
Expand
System.Runtime.Remoting.Channels.Http
-
Expand
System.Runtime.Remoting.Channels.Tcp
-
Expand
System.Runtime.Remoting.MetadataServices
-
Expand
System.Runtime.Serialization.Formatters.Soap.Xml
-
Expand
System.Runtime.Serialization.Formatters.Soap
-
Expand
Microsoft.Tools.Caspol
-
Expand
Microsoft.Tools.Build
-
Expand
Microsoft.CSharp
-
Expand
System.CodeDom
-
Expand
System.CodeDom.Compiler
-
Expand
System.Collections.Specialized
-
Expand
System.ComponentModel
-
Expand
System.ComponentModel.Design
-
Expand
System.ComponentModel.Design.Serialization
-
Expand
System.Configuration
-
Expand
System.Web
-
Expand
System.Configuration.Provider
-
Expand
System.Configuration.Internal
-
Expand
System.Internal
-
Expand
System.Windows.Forms
-
Expand
System.Net
-
Expand
System.Net.Sockets
-
Expand
System.Net.NetworkInformation
-
Expand
System.Net.ComImports
-
Expand
System.Net.Security
-
Expand
System.Net.Cache
-
Expand
System.Net.Configuration
-
Expand
System.Text.RegularExpressions
-
Expand
System.Tools
-
Expand
System.IO.Compression
-
Expand
System.IO.Ports
-
Expand
System.Security.AccessControl
-
Expand
System.Xml
-
Expand
System.Xml.XPath.DataBinding
-
Expand
System.Xml.Schema
-
Expand
System.Xml.Serialization
-
Expand
System.Xml.Serialization.Advanced
-
Expand
System.Xml.Serialization.Configuration
-
Expand
System.Xml.XPath
-
Expand
System.Xml.Xsl
-
Expand
System.Xml.Xsl.IlGen
-
Expand
System.Xml.Xsl.Qil
-
Expand
System.Xml.Xsl.Runtime
-
Expand
System.Xml.Xsl.XPath
-
Expand
System.Xml.Xsl.Xslt
-
Expand
System.Xml.Xsl.XsltOld
-
Expand
System.Xml.Xsl.XsltOld.Debugger
-
Expand
Microsoft.JScript
-
Expand
Microsoft.Vsa
-
Expand
Microsoft.JScript.Vsa
- namespace System.Resources
- {
- using System;
- using System.Collections;
- using System.Collections.Generic;
-
- internal sealed class FastResourceComparer : IComparer, IEqualityComparer, IComparer<string>, IEqualityComparer<string>
- {
- static internal readonly FastResourceComparer Default = new FastResourceComparer();
-
-
- public int GetHashCode(object key)
- {
- string s = (string)key;
- return FastResourceComparer.HashFunction(s);
- }
-
- public int GetHashCode(string key)
- {
- return FastResourceComparer.HashFunction(key);
- }
-
-
-
-
- static internal int HashFunction(string key)
- {
-
-
-
- uint hash = 5381;
- for (int i = 0; i < key.Length; i++)
- hash = ((hash << 5) + hash) ^ key[i];
- return (int)hash;
- }
-
-
- public int Compare(object a, object b)
- {
- if (a == b)
- return 0;
- string sa = (string)a;
- string sb = (string)b;
- return String.CompareOrdinal(sa, sb);
- }
-
- public int Compare(string a, string b)
- {
- return String.CompareOrdinal(a, b);
- }
-
- public bool Equals(string a, string b)
- {
- return String.Equals(a, b);
- }
-
- public new bool Equals(object a, object b)
- {
- if (a == b)
- return true;
- string sa = (string)a;
- string sb = (string)b;
- return String.Equals(sa, sb);
- }
-
-
-
- unsafe public static int CompareOrdinal(string a, byte[] bytes, int bCharLength)
- {
- BCLDebug.Assert(a != null && bytes != null, "FastResourceComparer::CompareOrdinal must have non-null params");
- BCLDebug.Assert(bCharLength * 2 <= bytes.Length, "FastResourceComparer::CompareOrdinal - numChars is too big!");
-
-
- int i = 0;
- int r = 0;
-
- int numChars = a.Length;
- if (numChars > bCharLength)
- numChars = bCharLength;
- if (bCharLength == 0)
-
- return (a.Length == 0) ? 0 : -1;
- fixed (byte* pb = bytes) {
-
- byte* pChar = pb;
- while (i < numChars && r == 0) {
-
- int b = pChar[0] | pChar[1] << 8;
- r = a[i++] - b;
- pChar += sizeof(char);
- }
- }
- if (r != 0)
- return r;
- return a.Length - bCharLength;
- }
-
- public static int CompareOrdinal(byte[] bytes, int aCharLength, string b)
- {
- return -CompareOrdinal(b, bytes, aCharLength);
- }
-
-
-
- unsafe static internal int CompareOrdinal(byte* a, int byteLen, string b)
- {
- BCLDebug.Assert((byteLen & 1) == 0, "CompareOrdinal is expecting a UTF-16 string length, which must be even!");
- BCLDebug.Assert(a != null && b != null, "Null args not allowed.");
- BCLDebug.Assert(byteLen >= 0, "byteLen must be non-negative.");
-
- int r = 0;
- int i = 0;
-
- int numChars = byteLen >> 1;
- if (numChars > b.Length)
- numChars = b.Length;
- while (i < numChars && r == 0) {
-
- char aCh = (char)(*a++ | (*a++ << 8));
- r = aCh - b[i++];
- }
- if (r != 0)
- return r;
- return byteLen - b.Length * 2;
- }
- }
- }