public int GetId(IDependencyFingerprintProtocol protocol) { var t = protocol.GetType(); var assembly = t.Assembly; var assemblyId = assemblyIds[assembly]; var moduleTypeId = moduleRegistries[assemblyId][t]; return(((int)(assemblyId) << 16) | ((int)moduleTypeId)); }
public void Write(IDependencyFingerprintProtocol protocol) { if (protocol != null) { writer.Write(true); writer.Write(registry.GetId(protocol)); protocol.Save(this); } else { writer.Write(false); } }