Commit graph

39 commits

Author SHA1 Message Date
q66 70e50d2f41 rename to FromBigEndian/FromLilEndian 2015-06-27 02:50:26 +01:00
q66 274de0e70d add functional::EndianSwap,EndianSwapLil,EndianSwapBig (+ corresponding plain funcs) 2015-06-27 02:38:58 +01:00
q66 850d20093a string equality + tweaks 2015-06-14 02:36:20 +01:00
q66 13b8b06d33 hashing improvements, allow to_hash on containers 2015-06-09 18:58:21 +01:00
q66 ea42a5e841 use new type aliases + refactoring + namespacing 2015-06-08 21:20:12 +01:00
q66 d4e234f893 type renames 2015-06-08 01:39:12 +01:00
q66 6eae6487c4 replace usages of typedef with "using" 2015-06-08 00:55:08 +01:00
q66 7f1c80e2d6 oops 2015-06-07 18:31:27 +01:00
q66 4a45d03544 gcc warning fixes 2015-06-07 18:30:28 +01:00
q66 548de69102 add octa::FunctionMakeDefaultConstructible, use in MapRange and FilterRange
This turns any callable object into a primitive default constructible type.
That is, for regular function objects, the type represents the object type
itself, for function pointers, the type represents the function pointer,
for simple lambdas the type represents a function pointer they map to
(only when the lambda doesn't capture) and for closures it represents
the right octa::Function type.
2015-06-07 18:07:48 +01:00
q66 2652fe9242 octa::Function allocator support 2015-06-07 01:14:04 +01:00
q66 e9ab01b894 function cleanup 2015-06-07 00:03:06 +01:00
q66 84d78ba87a deuglify template args 2015-06-04 22:57:06 +01:00
q66 153812e91e deuglify functional.h 2015-06-03 23:27:09 +01:00
q66 ff90009450 get rid of stupid Type suffixes (we already know it's a type from the name) 2015-06-03 20:00:41 +01:00
q66 bfc94e31d7 uglify the code by using unique identifiers only (prevent macro conflicts) 2015-06-02 00:57:34 +01:00
q66 e9367246b5 completely genericized octa::swap (no need for global overloads ever) 2015-05-26 21:29:44 +01:00
q66 029575d4a6 add octa::each 2015-05-26 19:25:20 +01:00
q66 64810e4006 remove the noexcept stuff; nothing in octastd ever throws 2015-05-20 22:05:41 +01:00
q66 e3d5da3e66 octa::Hash in functional.h (+ specializations for all primitive types) 2015-05-10 21:57:52 +01:00
q66 98e7566ad9 coding style 2015-05-03 23:44:48 +01:00
q66 da69a57015 add input func check to octa::Function 2015-05-03 16:09:47 +01:00
q66 b1192b248c noexcept formatting 2015-04-29 01:38:16 +01:00
q66 1a2d606ae7 noexcept the library 2015-04-28 18:48:58 +01:00
q66 f4b0691003 noexcept for functional 2015-04-28 02:30:17 +01:00
q66 56f19204a2 style update 2015-04-27 20:23:38 +01:00
q66 d7778cf259 ditch the separate "type" struct 2015-04-27 19:38:34 +01:00
q66 0245db3fec rename traits->type_traits 2015-04-25 16:13:21 +01:00
q66 6de48f1f21 refactor traits: e.g. "RemoveCV<T>" instead of "typename RemoveCV<T>::type" 2015-04-24 20:03:16 +01:00
q66 f106c5ae24 get rid of namespace internal 2015-04-24 18:16:35 +01:00
q66 89bab3362b add another condition on Function in-place optimization 2015-04-23 21:05:09 +01:00
q66 0c217e2128 add all remaining traits + cleanup, remove namespace internal etc 2015-04-23 20:38:18 +01:00
q66 90cecea052 correctly forward 2015-04-22 23:28:43 +01:00
q66 9a7a832fe3 move mem_fn to functional 2015-04-22 23:25:02 +01:00
q66 af9eff5c6d add functional::Function (generic wrapper around any callable type) 2015-04-22 18:42:58 +01:00
q66 1177d94b6e implement ReferenceWrapper + ref/cref + address_of 2015-04-18 19:03:11 +01:00
q66 799c9fed94 add not1/not2 2015-04-18 18:36:06 +01:00
q66 6247093ad9 add BinaryNegate and UnaryNegate 2015-04-18 02:50:20 +01:00
q66 c147f57588 add functional.h (for now with operator functor defs) + skeleton for algorithm.h 2015-04-18 02:35:36 +01:00