Commit Graph

742 Commits (master)

Author SHA1 Message Date
Daniel Kolesa 90bc301487 reliable and simple string relational operators that work on ConstCharRange 2015-07-24 19:43:39 +01:00
Daniel Kolesa 7ede73f4dc sink based concat() (no allocation in-func) 2015-07-23 02:05:08 +01:00
Daniel Kolesa 287bdbd312 contiguous ranges provide the data() method to retrieve a pointer to the sequence 2015-07-23 01:32:22 +01:00
Daniel Kolesa 7fc4ce0a3a new range category: ContiguousRange (guaranteed to be backed by contiguous memory) 2015-07-23 01:28:25 +01:00
Daniel Kolesa 0e0ba19ead stricter to_format check 2015-07-23 00:48:32 +01:00
Daniel Kolesa ad2d69e83d use a sink for to_string methods on objects (no extra allocs) 2015-07-23 00:44:23 +01:00
Daniel Kolesa 9446470f3c use ConstCharRange for concat separator 2015-07-22 21:10:04 +01:00
Daniel Kolesa 13ca140b63 string ctor for pointer and literal because c++ semantics suck 2015-07-22 21:01:02 +01:00
Daniel Kolesa 161ab5be85 cleaned up constructors/assign ops for string and vector 2015-07-22 20:51:12 +01:00
Daniel Kolesa b9edc0c568 rewritten and simplified write(f/ln) on stream objects 2015-07-22 02:06:36 +01:00
Daniel Kolesa debbddc8da format cleanups (and add convenience method put_string to the to_format range) 2015-07-22 01:53:55 +01:00
Daniel Kolesa b2d656e481 use ConstCharRange when formatting strings 2015-07-22 01:30:23 +01:00
Daniel Kolesa 5786fc5fb7 user defined literal for const char ranges 2015-07-22 00:13:44 +01:00
Daniel Kolesa 458e0b8b87 use ConstCharRange for streams 2015-07-21 22:30:53 +01:00
Daniel Kolesa a84142474c io.hh cleanup 2015-07-21 22:21:54 +01:00
Daniel Kolesa 7a2f8581d7 StringRange -> CharRange 2015-07-21 22:06:23 +01:00
Daniel Kolesa f2082d17cd use string ranges everywhere else in format 2015-07-21 22:03:57 +01:00
Daniel Kolesa 874f8a3c14 use string ranges in format 2015-07-21 21:45:04 +01:00
Daniel Kolesa 7a0237788f ConstStringRange ToString specialization 2015-07-21 20:25:09 +01:00
Daniel Kolesa aa9bdb3ec2 better StringRange from-string ctor (allows for non-const to const conv semantics) 2015-07-21 20:23:31 +01:00
Daniel Kolesa 5d36b5663c StringRange - differentiate between arrays and pointer constructors 2015-07-21 20:19:27 +01:00
Daniel Kolesa 852ae9ea37 better hashtable erase 2015-07-21 02:11:53 +01:00
Daniel Kolesa 71f5df79ce better multihash insertion strategy (make sure elements with equal keys always form a sequence in a bucket) 2015-07-21 01:37:02 +01:00
Daniel Kolesa 8e40fca1ce hash fixes/cleanups and make at() return a pointer 2015-07-20 22:04:52 +01:00
Daniel Kolesa 56629ff358 bucket list cleanup 2015-07-20 21:56:56 +01:00
Daniel Kolesa 0421e7b3c8 use calls to bucket() to get hashes 2015-07-20 21:08:49 +01:00
Daniel Kolesa 0c297af0bd hash chunk cache line boundary alignment optimization 2015-07-20 18:51:16 +01:00
Daniel Kolesa cc0fccb8cf use fnv-1a hashing instead of djb2 2015-07-20 02:20:35 +01:00
Daniel Kolesa a048a5384c use mem_hash for hashing strings 2015-07-20 02:15:12 +01:00
Daniel Kolesa 453b463ce6 optimize hashtable to use small ranges (but larger nodes) 2015-07-20 02:08:30 +01:00
Daniel Kolesa 3613af3daa alloc an extra bucket ptr as trailing sentinel value (for later usage) 2015-07-20 00:50:31 +01:00
Daniel Kolesa d7c789195a string fixes 2015-07-18 17:01:11 +01:00
Daniel Kolesa 53e292cdb0 _s literal for strings 2015-07-18 01:02:13 +01:00
Daniel Kolesa a6584020a3 signal.hh -> event.hh, Event -> Signal 2015-07-17 19:00:25 +01:00
Daniel Kolesa e9cf0c67ed more signal functionality 2015-07-16 20:49:12 +01:00
Daniel Kolesa 58cbe3873c recycle signal slots 2015-07-16 19:21:51 +01:00
Daniel Kolesa 8327022c67 signal const correctness 2015-07-16 18:55:21 +01:00
Daniel Kolesa b22baaf5fd const for emit 2015-07-16 01:42:35 +01:00
Daniel Kolesa b20e32a8b6 add Event::clear 2015-07-16 01:40:58 +01:00
Daniel Kolesa 01ebb0063c add new signal API 2015-07-16 01:37:37 +01:00
Daniel Kolesa 267e14c1c2 Maybe fix 2015-07-15 22:03:51 +01:00
Daniel Kolesa 1c4f04757d mv the octa directory too 2015-07-13 20:10:29 +01:00