Commit Graph

123 Commits (a0337c401e4363c539bb3ab9df632d0c6815248d)

Author SHA1 Message Date
Daniel Kolesa 62b0c2ecf7 hash operator() needs to be const 2017-01-30 19:31:24 +01:00
Daniel Kolesa 0ee0d3231c use standard types 2017-01-30 19:23:12 +01:00
Daniel Kolesa 2884f4b47b use size_t and ptrdiff_t 2017-01-30 19:11:49 +01:00
Daniel Kolesa 1db7529ad9 remove custom hashing 2017-01-30 18:56:38 +01:00
Daniel Kolesa 343c684820 initial proper string integration 2017-01-30 01:16:29 +01:00
Daniel Kolesa 632147c5fb bump compiler 2017-01-29 21:22:40 +01:00
Daniel Kolesa 2c7f98f57e use standard swap 2017-01-29 15:56:02 +01:00
Daniel Kolesa a8f7122d45 use standard declval 2017-01-29 15:29:11 +01:00
Daniel Kolesa c8c24300ee fully use standard tuples 2017-01-28 19:06:52 +01:00
Daniel Kolesa 2e7bba2c95 remove Pair, more standard tuple usage etc 2017-01-28 18:52:34 +01:00
Daniel Kolesa 7e96183648 start moving over to standard tuple 2017-01-28 18:30:31 +01:00
Daniel Kolesa 56a3327dce use standard vector and move/forward 2017-01-25 01:57:24 +01:00
Daniel Kolesa e7c6032edb add initial numeric limits implementation (type-generic min/max/etc) 2016-11-15 22:46:03 +01:00
Daniel Kolesa 9e609e0057 rename disown to release (consistent with other places) 2016-09-18 19:30:55 +02:00
Daniel Kolesa cd748bd44a remove unneeded code 2016-09-02 17:21:35 +01:00
Daniel Kolesa c4039fa56f add case insensitive string compare 2016-09-02 00:06:13 +01:00
Daniel Kolesa 17365642ef actually safe string cmp 2016-08-18 00:35:21 +01:00
Daniel Kolesa c7862243a8 avoid UB in string compare 2016-08-17 18:18:12 +01:00
Daniel Kolesa 8afffc1fb7 refactoring, style updates, various fixes 2016-07-31 20:40:25 +01:00
Daniel Kolesa 47ed1a700c don't use classic style casts 2016-07-02 04:57:23 +01:00
Daniel Kolesa 676f76acee string element append fix and OS X support note 2016-06-27 19:18:31 +01:00
Daniel Kolesa 7912c24e3a const syntax refactoring 2016-06-23 19:18:35 +01:00
Daniel Kolesa 46d8844a49 return fix 2016-05-24 01:30:11 +01:00
Daniel Kolesa 5189bab1af simplify string operator+= for T 2016-05-22 15:31:11 +01:00
Daniel Kolesa d9bd0f8380 restrict string operator+ (conflicts with range offset) 2016-05-21 15:36:14 +01:00
Daniel Kolesa a5c4b9d3ca global concat op for strings 2016-05-07 17:25:40 +01:00
Daniel Kolesa 6c840ad830 implement zip and tuple ToString 2016-03-27 23:49:57 +01:00
Daniel Kolesa 54789177e2 no need for a typedef 2016-03-24 21:52:16 +00:00
Daniel Kolesa 60a04937c6 string range optimizations 2016-03-23 22:32:30 +00:00
Daniel Kolesa a31ddba522 range fixes 2016-03-23 22:27:46 +00:00
Daniel Kolesa 9de9d99d4d fixes 2016-03-22 01:13:43 +00:00
Daniel Kolesa e48642659d generalize temp cstrings for any range type 2016-03-21 21:21:41 +00:00
Daniel Kolesa 4854242918 typo fix 2016-03-20 20:23:26 +00:00
Daniel Kolesa 6c4fd3d8ae this doesn't actually happen 2016-03-19 20:23:46 +00:00
Daniel Kolesa a63cf1edb1 add experimental api to turn unterminated string ranges to terminated c strings 2016-03-19 19:52:46 +00:00
Daniel Kolesa b66c684add add trailing newlines 2016-02-07 21:19:20 +00:00
Daniel Kolesa 5902299a1d convert the remaining usage of Constant and all the remaining public traits 2016-01-20 19:05:11 +00:00
Daniel Kolesa 8a1671f6ea convert most of the rest to template vars 2016-01-20 18:42:29 +00:00
Daniel Kolesa 9e4d475488 rename IntegralConstant to Constant 2016-01-16 18:31:58 +00:00
Daniel Kolesa 818cbe376a convert the remaining type_traits.hh checking traits to constexpr bools 2016-01-13 18:09:21 +00:00
Daniel Kolesa a6744105dc convert range checks to template vars 2016-01-13 17:42:37 +00:00
Daniel Kolesa 9b11c1d319 convert IsSame to template variable 2016-01-12 22:24:40 +00:00
Daniel Kolesa d53556d336 convert a part of type traits to template variables (reduces verbosity in a lot of places) 2016-01-12 21:45:26 +00:00
Daniel Kolesa 02e7ae76a2 add ostd::starts_with to string library 2015-12-31 16:36:41 +01:00
Daniel Kolesa 0fae09907e string fixes + add advance() 2015-08-07 03:12:00 +01:00
Daniel Kolesa 44d2600067 fix warning when passing nullptr constant 2015-08-07 00:08:59 +01:00
Daniel Kolesa 661bd5244e null checks 2015-08-06 23:57:40 +01:00
Daniel Kolesa 8ba91c12fe string clear check 2015-08-05 21:58:06 +01:00
Daniel Kolesa 50a8562d20 ensure correct ctor overload resolution on char/pointer range for two pointers vs pointer plus size when passed int (or similar) 2015-08-05 02:09:44 +01:00
Daniel Kolesa bcb5f64250 str fixes 2015-08-01 04:29:26 +01:00
Daniel Kolesa 49af758238 explicit overloads of operator= on string for ptr/array because c++ type system blows 2015-08-01 04:19:37 +01:00
Daniel Kolesa c66fa7c7bf forgot inline 2015-08-01 03:08:11 +01:00
Daniel Kolesa 841000d4d8 better string append() and operator+= (easy ranged append) 2015-07-25 02:34:07 +01:00
Daniel Kolesa 6c28e6dd66 fixed typo 2015-07-25 02:07:51 +01:00
Daniel Kolesa 178e6d2ae2 remove AnyString 2015-07-25 01:35:36 +01:00
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 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 5786fc5fb7 user defined literal for const char ranges 2015-07-22 00:13:44 +01:00
Daniel Kolesa 7a2f8581d7 StringRange -> CharRange 2015-07-21 22:06:23 +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 a048a5384c use mem_hash for hashing strings 2015-07-20 02:15:12 +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 1c4f04757d mv the octa directory too 2015-07-13 20:10:29 +01:00