Commit Graph

145 Commits

Author SHA1 Message Date
9704387fdc view: use auto return type for indexing 2017-12-26 17:34:08 +11:00
1123cfe409 view: add unused_result warning to redim 2017-12-26 17:34:08 +11:00
e1a41c64de view: add increment and decrement methods 2017-12-26 17:34:08 +11:00
a67069a333 view: move ostream operator into header 2017-12-26 17:34:08 +11:00
dc51fa2ed0 view: char constructor shouldn't include null characters 2017-12-26 17:34:08 +11:00
8d317fd41e view: allow multiple iterator types 2017-12-22 12:34:25 +11:00
202c22eee8 view: simplify logical comparator implementation
we remove some duplicate and specific logical comparator specialisations
and instead rely on a base view/view comparator implementation by way of
make_view.
2017-12-20 12:31:52 +11:00
17f1ca8f93 view: add char-view less-than operator 2017-12-19 18:18:10 +11:00
62d5dfcf64 view: add container/view equality operators 2017-12-19 18:18:10 +11:00
e61c4f6e98 view: add constructors from nullptr_t 2017-12-19 18:18:10 +11:00
60a7670326 view: delegate constructors where feasible
this will allow us to reduce code duplication for sanity checks at
construction time.
2017-12-15 18:58:33 +11:00
0351313c36 Merge branch 'master' into coord 2017-11-23 17:24:11 +11:00
34788756d2 build: don't use './' as an include prefix
GCC produces ODR error when including paths of the form './foo' and
'foo' in the same binary. Rather than managing duplication we just
universally pick the absolute form over the relative form.
2017-11-22 16:49:37 +11:00
4641d43742 view: comment style 2017-10-02 14:14:55 +11:00
220e499681 view: make equality consistent 2017-09-15 15:22:51 +10:00
c222e4e960 view: constructor should take iterators by constref
who knows how big the iterators are, or if they can be moved.
2017-09-14 13:24:08 +10:00
015dff80a0 view: add nulling move operations 2017-09-14 13:13:45 +10:00
acfbec871a view: remove noexcept from redim
redim can throw, it shouldn't be noexcept...
2017-08-31 13:51:21 +10:00
367fc1dcb1 view: add redim operation 2017-08-31 13:03:19 +10:00
4a92981379 view: we really don't need a dedicated find function 2017-08-30 15:13:24 +10:00
5634e59dc5 view: don't return references to iterators
we emulate string_view behaviour. modifying our iterators behind our
backs isn't a great way to ensure invariants are kept.
2017-08-01 14:47:44 +10:00
eabf93bc2a view: remove ipp file in preference of inline code 2017-08-01 14:16:55 +10:00
e5090ff916 view: add 'data' accessor call
added for completeness sake. users can now call
std::begin/std::end/std::data
2017-07-28 14:26:49 +10:00
4f398620ab view: add make_cview function for pointers 2017-03-23 14:36:56 +11:00
436df2952f view: add make_view specialisations for std::string 2017-03-17 18:06:02 +11:00
54b26e9f60 view: add two-iterator make_view call 2017-02-21 21:20:15 +11:00
7786d32ba5 view: add inequality operator 2017-02-20 18:10:26 +11:00
3e9b86f33f view: add make_cview function 2016-12-06 15:18:49 +11:00
b027b60be0 view: find function takes const ref 2016-11-17 19:53:19 +11:00
86332b4d3c view: move array constructor to make_array function 2016-11-17 19:53:19 +11:00
ba2c74449f view: make container constructor explicit and constexpr 2016-06-28 14:09:48 +10:00
722dbbe18f view: use decltype for make_view type deduction
some types will not have iterator typedefs but are capable of providing
iterators. use the types that std::begin and friends return instead of
deducing them ourselves.
2016-06-28 14:06:02 +10:00
28d44593d8 view: add make_view, ref-qualifiers, comparators 2016-03-17 18:14:40 +11:00
42806d2060 view: don't include iostream when ostream suffices 2016-03-16 19:28:35 +11:00
bac238a5ef view: remove restrict before calculating value_type
restrict is poorly handled under libstdc++ in gcc-5.3
2016-03-16 19:27:58 +11:00
e1e5efb357 view: indexing operator returns non-const iterators 2016-02-10 13:07:13 +11:00
f610a70950 view: style 2016-02-10 13:07:03 +11:00
4310366987 view: make methods constexpr
the class is used in some constexpr parsing routines, so constexpr for
many methods is required.
2015-09-25 13:41:04 +10:00
56b5c34b5d view: move implementation inline
this allows support for arbitrary iterator types
2015-09-22 18:31:47 +10:00
37f9390ef8 view: template on arbirtrary iterator types 2015-09-21 15:36:05 +10:00
fd319d579b build: make single argument constructors explicit 2015-06-04 22:18:43 +10:00
2658b41ea1 relicence under Apache-2.0 2015-04-13 18:05:28 +10:00
da464968e6 view: add equality operators 2015-02-11 16:43:27 +11:00
e14b17c0bd uri: use begin and end methods, not variables 2015-02-11 16:43:27 +11:00
49e60e576f view: extract span class into standalone class 2015-02-11 16:18:43 +11:00