Maxime Coste
|
61c155fc40
|
Fix wrap_lines
|
2016-04-27 13:55:32 +01:00 |
|
Maxime Coste
|
ab5daeb365
|
Refactor wrap_lines and add some unit tests
|
2016-04-04 13:42:58 +01:00 |
|
Maxime Coste
|
e5afacba70
|
Optimize split implementation, avoid growing strings char by char
|
2016-03-24 23:25:58 +00:00 |
|
Maxime Coste
|
8bd3395d4d
|
Do not allow / in highlighter names as it is used for hierachies
/ are replaced with <slash> in the highlighter names.
Fixes #553
|
2016-02-13 12:59:27 +00:00 |
|
Maxime Coste
|
8d37a716fb
|
Use a custom SSO aware string backend
|
2016-02-10 09:44:42 +00:00 |
|
Maxime Coste
|
ec91ea17fe
|
Add a static const String::ms_empty empty string
|
2015-11-25 21:07:41 +00:00 |
|
Maxime Coste
|
784ab635ee
|
Splitting an empty string now returns an empty vector
|
2015-11-19 00:17:18 +00:00 |
|
Filip Szczepański
|
47e6eed7c9
|
Add Haiku support.
|
2015-09-24 22:36:29 +00:00 |
|
Maxime Coste
|
27571a7716
|
Refactor utf8::iterator to be on the safe side
utf8::iterator now knows the iterator valid range, and pass
it to utf8 functions.
|
2015-09-23 19:39:21 +01:00 |
|
Maxime Coste
|
459d0baf79
|
Tweak string unit tests
|
2015-09-20 17:18:43 +01:00 |
|
Maxime Coste
|
ca2043d9f2
|
Fix unescape implementation
|
2015-09-20 11:47:20 +01:00 |
|
Maxime Coste
|
29b508a894
|
Avoid wrapping lines with negative max width
|
2015-09-07 23:29:01 +01:00 |
|
Maxime Coste
|
a33c8d9677
|
Smaller sizeof for in place strings
|
2015-08-18 21:06:53 +01:00 |
|
Maxime Coste
|
d2b82f507f
|
More performant escape/unescape
|
2015-08-13 22:04:21 +01:00 |
|
Maxime Coste
|
f87dbe410f
|
Add missing support for Codepoint in format
|
2015-07-14 13:47:51 +01:00 |
|
Maxime Coste
|
6870895374
|
Add support for hex formatting
|
2015-06-22 13:56:00 +01:00 |
|
Maxime Coste
|
6d23bb056a
|
Fix wrong exception type in str_to_int
|
2015-06-19 18:29:58 +01:00 |
|
Maxime Coste
|
dd25dcc361
|
Move unit test functions in next to the code they are testing
|
2015-05-22 13:58:56 +01:00 |
|
Maxime Coste
|
d7159a9af0
|
Add str_to_int_ifp that returns an Optional<int> instead of throwing
|
2015-05-01 18:47:22 +01:00 |
|
Maxime Coste
|
f6c7948c12
|
Add format_to allowing formating to an existing buffer
|
2015-04-22 13:19:46 +01:00 |
|
Maxime Coste
|
4c49583fed
|
small code tweak in format
|
2015-03-31 13:55:57 +01:00 |
|
Maxime Coste
|
758bfe7284
|
number to string conversion avoids memory allocations
|
2015-03-31 13:53:40 +01:00 |
|
Maxime Coste
|
335c73a09b
|
Use custom implementation rather the sscanf in str_to_int
|
2015-03-30 23:37:55 +01:00 |
|
Maxime Coste
|
13a5af70ae
|
Add a format function for printf like formatting
|
2015-03-30 23:05:24 +01:00 |
|
Maxime Coste
|
8439059758
|
Fix wrong implicit conversions from int/Codepoint to StringView
|
2015-03-30 13:33:46 +01:00 |
|
Maxime Coste
|
82833608c9
|
Allocate some data in advance in string algorithm
|
2015-03-14 11:46:53 +00:00 |
|
Maxime Coste
|
762643d320
|
Use correct %zu format string rather than cast
|
2015-03-12 20:43:21 +00:00 |
|
Maxime Coste
|
ecabfc67b7
|
fix warning on 32 bit compilation
|
2015-03-11 20:52:17 +00:00 |
|
Maxime Coste
|
3c1a325b6f
|
Refactor String, use a common StringOps interface, hide std::string
|
2015-03-10 19:50:22 +00:00 |
|
Maxime Coste
|
6c65c5e080
|
Add docstrings to highlighters, displayed by addhl help
|
2015-02-19 13:54:03 +00:00 |
|
Maxime Coste
|
790e671f6c
|
Replace some <cstring> function usage with c++ algorithms
|
2015-02-10 23:09:30 +00:00 |
|
Maxime Coste
|
b9c4fc2d8c
|
Add size_t and float to_string overload, and _sv UDL
|
2015-01-13 13:47:46 +00:00 |
|
Maxime Coste
|
9f9156a752
|
Track String memory allocations
|
2015-01-09 13:57:21 +00:00 |
|
Maxime Coste
|
e5b36f548b
|
Add missing include
|
2015-01-08 19:31:28 +00:00 |
|
Maxime Coste
|
064fb81b8d
|
Move containers utils to containers.hh and add filtered/transformed utils
|
2014-12-23 13:40:26 +00:00 |
|
Maxime Coste
|
ebecd60eb8
|
Rework hashing, use a more extensible framework similar to n3876 proposal
std::hash specialization is a pain to work with, stop using that, and
just specialize a 'size_t hash_value(const T&)' free function.
|
2014-12-16 18:57:19 +00:00 |
|
Maxime Coste
|
9f4af93780
|
cleanup in string.hh
|
2014-12-08 13:46:07 +00:00 |
|
Maxime Coste
|
b5ccc8bc73
|
Improve line wrapping behaviour
|
2014-11-20 18:45:10 +00:00 |
|
Maxime Coste
|
a444cd1d60
|
Improve wrap_lines behaviour, split on punctiation as well
|
2014-11-20 13:55:07 +00:00 |
|
Maxime Coste
|
314d662c5f
|
Change wrap_lines to return StringViews, move it to string.cc
|
2014-11-20 13:15:11 +00:00 |
|
Maxime Coste
|
97df59ddb7
|
Support single char StringView
remove single char escape function overload, add unescape function
|
2014-11-04 13:32:18 +00:00 |
|
Maxime Coste
|
69113e2711
|
Add a split function that does not take an escape and returns StringViews
When an escape character is not present, split can just return sub
strings of the parameter, so we can avoid duplicating the original
string data.
|
2014-10-19 16:27:36 +01:00 |
|
Maxime Coste
|
fa85f0fc32
|
Refactor regex uses, do not reference boost except in regex.hh
|
2014-10-13 13:14:23 +01:00 |
|
Maxime Coste
|
d55d041c6a
|
Add support for interned strings
Use interned strings for Modification contents and word database.
Interned strings are guaranteed not to move in memory and are
reference counted.
|
2014-10-01 00:20:12 +01:00 |
|
Maxime Coste
|
8ee2aa9ba7
|
Use more StringView in string helper functions
|
2014-08-03 10:02:17 +01:00 |
|
Maxime Coste
|
5b27b956ad
|
Rename utf8::utf8_iterator to utf8::iterator
|
2014-06-24 19:10:57 +01:00 |
|
Maxime Coste
|
53cb626f49
|
Add an expand_tabs string utility function
|
2014-04-28 19:49:00 +01:00 |
|
Maxime Coste
|
af2d82dfc1
|
Add StringView class for non owning string
|
2014-04-18 13:47:39 +01:00 |
|
Maxime Coste
|
bab10f5b93
|
add subsequence_match(str, subseq) utility function
|
2013-09-23 21:17:16 +02:00 |
|
Maxime Coste
|
5ae43acf94
|
Add prefix_match function and use it instead of adhoc code
|
2013-09-23 21:16:25 +02:00 |
|