Skip to content

🍫 Cocoa is an uniform hashing library with no dependencies that provides interface for CRC32, CRC64, GCRC, RS, JS, PJW, ELF, BKDR, SBDM, DJB, DJB2, BP, FNV, FNV1a, AP, BJ1, MH2, SHA1, SFH (C++11)

License

Notifications You must be signed in to change notification settings

r-lyeh-archived/cocoa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cocoa

  • Cocoa is an uniform hashing library written in C++11.
  • Cocoa provides interface for CRC32, CRC64, GCRC, RS, JS, PJW, ELF, BKDR, SBDM, DJB, DJB2, BP, FNV, FNV1a, AP, BJ1, MH2, SHA1, SFH.
  • Cocoa is tiny. Header-only.
  • Cocoa is cross-platform. No dependencies.
  • Cocoa is zlib/libpng licensed.

Sample

#include <cassert>
#include <string>
#include "cocoa.hpp"

int main() {
    std::string hash = cocoa::SHA1("hello world");
    std::cout << hash << std::endl;
    assert( cocoa::SHA1("hello world") == cocoa::SHA1("hello world") );
    return 0;
}

Possible output


~/cocoa>./test
2aae6c35c94fcfb415dbe95f408b9ce91ee846ed
~/cocoa>

C++03

Check old c++03 version here

API

For more details check the tests.cxx file.

Cocoa::hash() API

  • @todocument

Changelog

  • v1.0.0 (2015/06/12)
    • Removed warning
  • v0.0.0 (2010/xx/xx)
    • Initial commit

About

🍫 Cocoa is an uniform hashing library with no dependencies that provides interface for CRC32, CRC64, GCRC, RS, JS, PJW, ELF, BKDR, SBDM, DJB, DJB2, BP, FNV, FNV1a, AP, BJ1, MH2, SHA1, SFH (C++11)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages