Commit Graph

36 Commits (011aea6fbb9ec2f8d671901cd54ac43081279b46)

Author SHA1 Message Date
Daniel Kolesa 1e7640031a delete default ctors on all core range types 2015-06-29 23:33:20 +01:00
Daniel Kolesa 2f16288671 fix includes 2015-06-29 21:33:18 +01:00
Daniel Kolesa c53efaba92 fix hash table guard too 2015-06-28 16:05:27 +01:00
Daniel Kolesa 36c264b4b0 make .cc the extension for source files and .hh the extension for header files 2015-06-28 15:39:04 +01:00
Daniel Kolesa 9677274b3f each -> iter 2015-06-26 21:01:16 +01:00
Daniel Kolesa 9a6caffefe fix potential gcc warnings 2015-06-26 00:14:18 +01:00
Daniel Kolesa 501beee633 in HashRange, keep p_beg always pointing to the same bucket as p_node 2015-06-25 01:19:21 +01:00
Daniel Kolesa a4d33c5cd7 use friends to handle copy constructors correctly 2015-06-25 01:16:19 +01:00
Daniel Kolesa f93094735e remove duplications in all hash table code + unify hashes and multihashes into a single struct 2015-06-18 02:32:43 +01:00
Daniel Kolesa b20a6ec38e hash table cleanups 2015-06-18 01:41:00 +01:00
Daniel Kolesa 7cf50febd9 cleaner multihash handling 2015-06-18 01:17:33 +01:00
Daniel Kolesa e0ce128d13 remove unneeded templates 2015-06-17 21:37:22 +01:00
Daniel Kolesa 281371bb0c reduce code duplication 2015-06-17 21:33:49 +01:00
Daniel Kolesa ea70d2e467 add octa::Multimap and octa::Multiset 2015-06-17 21:25:34 +01:00
Daniel Kolesa bbb5fbf224 stricter bucket/hashrange ctor test 2015-06-17 19:19:08 +01:00
Daniel Kolesa 7a63619852 actually only check for sameness without qualifiers 2015-06-17 02:30:36 +01:00
Daniel Kolesa d8bf7b9c69 make hash/bucket ranges properly convertible 2015-06-17 02:28:26 +01:00
Daniel Kolesa ec44dbbfbd fix find() for const containers 2015-06-16 22:54:04 +01:00
Daniel Kolesa 2b05cb9297 Map::find, Set::find 2015-06-16 22:51:57 +01:00
Daniel Kolesa 3a659c1412 much simpler rehashing that doesn't invalidate references and allocates less 2015-06-16 21:52:37 +01:00
Daniel Kolesa 7265aee0d9 automatic rehashing 2015-06-16 21:36:16 +01:00
Daniel Kolesa eca4310caf support for hashtable assignment ops 2015-06-16 20:44:41 +01:00
Daniel Kolesa cfe7450d4b hashtable swap allocator fix 2015-06-16 20:05:45 +01:00
Daniel Kolesa e0a498806a hash table copy/move ctor support 2015-06-16 19:12:03 +01:00
Daniel Kolesa 3b65b0cb99 use allocators for hashtables always 2015-06-16 01:46:34 +01:00
Daniel Kolesa 8324f5f9cc revamped HashRange 2015-06-16 01:24:19 +01:00
Daniel Kolesa aa2a0afcc1 add BucketRange instead of abusing HashRange 2015-06-15 22:10:44 +01:00
Daniel Kolesa c456843f59 bucket interface 2015-06-15 21:06:34 +01:00
Daniel Kolesa 8ce2e67e36 emplace support on hashtables 2015-06-15 02:09:53 +01:00
Daniel Kolesa 4715e09f35 hashtble rehash support 2015-06-15 00:18:08 +01:00
Daniel Kolesa e2d8283eb7 cleaner hash range handling 2015-06-14 19:48:55 +01:00
Daniel Kolesa fa7bf1d3db initial range interface for hashtables 2015-06-14 04:32:01 +01:00
Daniel Kolesa c9e3ebd773 load factor management api 2015-06-14 03:43:11 +01:00
Daniel Kolesa d24d891977 more hashtable apis 2015-06-14 03:38:08 +01:00
Daniel Kolesa c5678238c3 move semantics/perfect forwarding for hashtable keys 2015-06-14 03:04:03 +01:00
Daniel Kolesa 48b8ba7522 initial hashtable/map implementation 2015-06-14 02:46:46 +01:00