Skip to content

v0.1.1

Compare
Choose a tag to compare
@a-lafrance a-lafrance released this 05 Nov 20:24
· 9 commits to master since this release

New Features

  • Vectors (growable array lists)
  • Owned, mutable strings: think string buffers in some languages, String in Rust
  • Hash maps
    • A pair data structure to support key-value pairs
  • A new type alias for a generic free function API
  • Substantial project infrastructure & layout changes
    • Reorganized project into 3 components: lfc, internals, tests

Bug Fixes

  • Fixed a bug with int_simple_hash() that corrupted hash calculation by upcasting the hash value pointer

Breaking Changes

  • array_get() has been renamed array_at(), and array_set() has been removed
  • int_simple_hash() takes an int* rather than a void* (see bug listed above)
  • str_simple_hash() has been renamed barestr_simple_hash() and takes a char* rather than a void*
  • The new free_fn_t type alias is used instead of raw function pointers throughout
  • Due to the above layout changes, the build infrastructure has changed slightly:
    • make rules liblfc and lfc_tests have been changed to liblfc.a and tests, respectively
    • The "proper include" rules have been removed completely (thankfully)