Commit Graph

979 Commits

Author SHA1 Message Date
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
3a8dfaaf55
Explicitly update git submodules during Travis generation of Boost.Outcome 2019-01-16 21:02:21 +00:00
Jenkins nedprod CI
7539d43af0 Merging commit ned14/outcome@c1a2eb76a1:
Merged from develop branch as CDash reports all green
2019-01-12 20:24:14 +00:00
Jenkins nedprod CI
9861d4305a Merging commit ned14/outcome@a823cfbc01:
Merged from develop branch as CDash reports all green
2019-01-11 21:06:58 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b20bdce7de
Travis: work around lack of SHAs we need during Boost.Outcome conversion. 2019-01-11 20:57:15 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
649ab9929a
Travis: Fix failure to update master branch on Boost.Outcome, and restore missing hugo docs theme. 2019-01-11 17:42:12 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
d190136b16
Fix failure to set correct git author and timestamp for commits converted to Boost.Outcome. 2019-01-11 16:50:04 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
d30556aba6
Try again to get Travis to push updates to Boost.Outcome 2019-01-11 15:22:37 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
77d24082db
Add missing original branches during Boost.Outcome generation. 2019-01-10 22:27:38 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
2d60d75743
Regenerate boostorg/outcome rather than ned14/boost-outcome. 2019-01-10 16:55:35 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f3dc9ff947 Merging commit ned14/outcome@2b6c5019ee:
Merged from develop branch as CDash reports all green
2019-01-10 12:17:55 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
22647cbf45 Merging commit ned14/outcome@1cb2bf6a38:
Merged from develop branch as CDash reports all green
2019-01-10 12:17:40 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
d2b6764905 Merging commit ned14/outcome@0e12cfb257:
Yet more basic_result constructors.
2019-01-10 12:17:36 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
ef22a4bc3f Merging commit ned14/outcome@e17e56d945:
upd
2019-01-10 12:17:32 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
da9f24be05
Merge branch 'orig-master' (early part) 2019-01-10 12:17:16 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0e12cfb257
Yet more basic_result constructors. 2018-12-15 17:49:37 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
e17e56d945
upd 2018-12-15 13:12:51 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
6fb5f9666c
Retried the C++ Modules based build with VS2019.9, found some MS headers are still problematic, so disabled again. 2018-11-21 09:07:03 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
4995acdc40
upd 2018-11-19 09:06:59 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b5398125b2
Merge branch 'develop' of github.com:ned14/boost.outcome into develop 2018-11-16 09:17:14 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
dde94e70d6
upd 2018-11-16 09:16:43 +00:00
Andrzej Krzemieński
efd1f79a0a
use _has_value inside policy::base 2018-11-12 11:55:07 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
9d8e3ff7a7
Fix forgetting to upgrade outcome_exception_ptr_rethrow to new internal policy API. 2018-11-11 23:48:28 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f8c8660377
There is now as well a formal API for policies to access the exception/ptr member of outcomes. Definitely time for bed! 2018-11-11 23:27:11 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
212187eb6d
Created a formal API for policies to work with internal state without needing to access it directly. Cut off access to internals for policies, that means you all got to fix your policies, sorry. Implemented for result only so far, next up is for outcome. Thanks to Andrzej Krzemienski for asking all the right questions to make this happen.
Also when compiling on MSVC, now also compile with /permissive- to ensure our ugly hack workarounds for MSVC brokenness keep working.
2018-11-11 21:32:56 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
145639d23e
Try suggestion for /fpermissive- bug workaround from issue #142. 2018-11-08 19:18:47 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
8796ed73ea
upd 2018-10-25 21:59:24 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
2afe38db20
Update to latest SG14 status code. 2018-10-17 19:18:43 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0c4200b7ca
Update SG14 status code once more to fix a bug. 2018-10-15 20:04:47 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f380b5a069
Latest SG14 status code + unit test Herb wanted. 2018-10-15 19:53:56 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
a312371cd7
Fixups in Outcome's unit tests for latest SG14 status code. This appears to be failing on VS2017 due to a compiler bug, sigh. 2018-10-12 09:59:12 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f0f6474b1a
Add macro OUTCOME_DISABLE_EXECINFO to work around issue #153 2018-09-20 19:00:20 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
af78839871
GCC 5 no longer can compile Outcome at all due to https://stackoverflow.com/questions/45607450/gcc5-nested-variable-template-is-not-a-function-template.
Added explicit version trap for GCC 5 to say it can not work. Note this is not a
breaking change, GCC 5 was never supported officially in any v2 Outcome.
2018-09-20 09:20:50 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
97cad4a622
OUTCOME_TRY now probes for .assume_value(), and if present uses it. Also patched in std::experimental::expected<T, E> support. 2018-09-14 18:09:24 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
aefc790a53
Issue #150 **BREAKING CHANGE** result<T, E>, boost_result<T, E> and std_result<T, E>
no longer implement hard UB on fetching a value from a valueless instance if `E` is
a UDT, they now fail to compile with a useful error message. If you wish hard UB,
use `unchecked<T, E>`, `boost_unchecked<T, E>` or `std_unchecked<T, E>` instead.
2018-09-14 18:08:22 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
c678b9221e
Add experimental single header edition (issue #149) 2018-09-05 09:42:11 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
dade07176c
Fix issue #148 where fetch is no longer available on OS X. 2018-09-04 19:13:49 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
92c8fa50a2
upd 2018-08-23 09:33:29 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
4499df4c41
upd 2018-08-15 18:39:11 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
2f521b22a9
upd 2018-07-03 09:38:21 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
ef970dccd0
upd 2018-06-25 09:38:29 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
3f755a0534
Fix build brokenness 2018-06-22 21:18:48 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
d949bc40d4
upd 2018-06-22 18:45:03 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
1051e50aef
upd 2018-06-22 09:34:56 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b1ff9f2a28
Fix compilation on GCC 8, thanks to cstratopoulos for the fix at pr #144.
Add FAQ entry comparing Outcome to P0709 Deterministic Exceptions.
2018-06-21 21:30:16 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
4eb1466c77
upd 2018-06-19 09:32:59 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
95e0a2210d
upd 2018-06-15 18:54:09 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
c86fe12e5d
upd 2018-06-08 14:34:53 +02:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
a4fe32179a
upd 2018-06-07 16:45:06 +02:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
46497538f4
upd 2018-06-01 19:35:57 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
9d0236d082
upd 2018-05-31 09:07:21 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b46a8fa80f
Fixed regression in earlier bug fix where exact type construction failed. This should restore the Boostified edition of Outcome to all tests passing. 2018-05-30 22:12:35 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
4f12238c22
upd 2018-05-29 09:33:17 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b7011dd568
Fixed a nasty corner case bug where value type's without a copy constructor
but with a move constructor would indicate via traits that copy construction
was available. Thanks to Microsoft's compiler team for reporting this issue #140.
2018-05-21 18:31:14 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
238b4df9e9
New experimental status_code support had broken build with exceptions disabled, fixed. 2018-04-26 20:16:55 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
cc218e85c3
upd 2018-04-25 09:55:50 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
c8557f9bb3
More, or less, experimental SG14 status_code support is now in Outcome. 2018-04-16 16:36:59 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
1521b80835
Added experimental status_result and status_outcome based on experimental status_code. 2018-04-13 10:01:45 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
5188e87c55
All implementation issues in #127 fixed. 2018-04-03 20:40:41 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
24d1a53502
Boost edition is now 100% Boost, so defaults for result and outcome are
`boost::system::error_code::errc_t` and `boost::exception_ptr`. Moreover,
the test suite in the Boost edition now exclusively tests the Boost edition.
One can, of course, freely use the standalone edition with Boost, and the Boost
edition with `std` types.
2018-04-03 20:33:47 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
6237ce4930
Reworked how the failure observer implementation is discovered so it can cope with dual use of Boost and STD types.
Renamed ADL discovered customisation point `throw_as_system_error_with_payload()` to `outcome_throw_as_system_error_with_payload()`.
2018-04-03 20:13:49 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f533900572
boost_result is finally working, boost_outcome is close, just one last thing to tweak. 2018-03-30 10:08:13 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
ab3afd506b
Refined the deleting constructors implemented yesterday. Restored green CI hopefully. 2018-03-29 09:46:12 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
fc4ad246bd
Added much clearer compile failure when user tries result<T, T> or outcome
where two or more types are identical. Thanks to Andrzej Krzemieński
for suggesting a technique which combines SFINAE correctness with
the remaining ability for `result<T, T>` etc to be a valid type, but
not constructible. Issue #135.

Disable ABI stability check on Travis, its versions of the ABI checking tools are just too old.

Lots of wip work on getting Boost.Outcome edition working, not there yet though.
2018-03-28 21:34:06 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com
e1a31b35ae
Finally got round to fixing issue #67 where noexcept tests fail on OS X for some unknown reason.
Turns out that the unknown reason is that libc++ has a really braindead implementation of
std::make_exception_ptr :(
2018-03-27 09:45:24 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
3edf81ea34
ABI compliance check program was somehow horribly broken. Fixed. 2018-03-26 22:50:01 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
38e09b9985
Reworked throw_as_system_error_with_payload() to be overload based instead of traits based, this should finally clear the way for boost_result<> and std_result<> to coexist. 2018-03-26 22:35:57 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
6524a366b2
Refactored the traits to use Expression SFINAE ADL discovery, thus paving the way for Outcome to dual-support both Boost and STD editions of everything. 2018-03-26 09:55:52 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
1bf641b213
Outcome did not construct correctly from failure_type (bug #115)
Inexplicably outcome's error + exception constructor had been removed.
Nobody noticed during the Boost peer review, which is worrying seeing as that
constructor is needed for one of the main advertised features to Boost!
2018-03-24 00:06:33 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
fd0d1cbca0
travis 2018-03-23 09:59:57 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
cb11081d7f
I had leaked move and forward into basic_outcome :( 2018-03-23 09:47:08 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
112d73c76a
- Enhancement #107 operator== and operator!= now become disabled if the value, error and
exception types do not implement the same operator.
- Bug #116 Relatedly, both comparison operators simple didn't work right. Fixed.
2018-03-22 20:29:33 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
1d4f4dd27c
Fix bug #109 Swap implementation's noexcept is too strict due to calling move constructors sometimes 2018-03-22 09:10:32 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
2f4b5cf44f
Basic single header edition now includes try macros. 2018-03-21 20:07:12 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
8fee7826e1
Also add ABI and API dumps to git repo.
Add a new single header file edition for a basic outcome which is the ultra lightweight edition.
2018-03-21 09:42:43 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
493851b6f2
Added a reference ABI dump for v2.1 so we can test how well it breaks with later changes. 2018-03-15 19:14:37 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
6c2a4dcaa8
OUTCOME_TRY is now overloaded and selects void or auto edition according to input parameter count (issue #124) 2018-03-14 19:04:18 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
7df4e24cf1
Fix generation of double underscored temporary variables in OUTCOME_UNIQUE_NAME, fixing issue #120. 2018-03-14 09:12:42 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
e14f06cd13
Move the C result support and status-code into an experimental directory 2018-03-14 09:07:35 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
9ec5e29123
Reworked outcome into basic_outcome etc. I think that's issue #110 closed, yay! 2018-03-13 21:38:50 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
6cab958840
Fix breakage in docs snippet 2018-03-12 21:52:28 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
ba2b11797d
Fix compile-fail regressions 2018-03-12 21:25:45 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
08e3e2899a
Finished breaking result into basic_result and std_result (issue #110). Include time has *dramatically* improved, including libstdc++ headers, basic_result.hpp parses in 1.17 secs vs 4.36 secs for std_result.hpp! Still need to convert outcome over, but getting close to closing this issue. 2018-03-12 20:52:47 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
ee3f787929
Fix test regression 2018-03-12 09:58:03 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
81ff91b0b8
Renamed all the result internal implementation classes to basic_result_*. Still have result itself to convert over. #110 2018-03-12 09:51:22 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
db1cce23cc
result observers, result_final is now system_error clean. The big one remaining is result, it'll take more work. Issue #110. 2018-03-06 20:07:22 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
1090ed5608
result_storage, value_storage, convert are all now system_error clean. 2018-03-06 20:00:09 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
7c89acd9f5
Begin work on issue #110 by moving traits into their own header, various utility types into config.
success_failure.hpp is now system_error clean.
2018-03-06 18:59:07 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
ba86c03db0
Add SG14 status-code as git submodule 2018-03-06 09:15:57 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com
ee292032f9
upd 2018-02-01 09:49:01 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com
97f8fd2c3d
upd 2018-01-30 21:26:18 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
8e19b539c4
In theory, this is it for the peer review on Friday: code and docs freeze. All known broken links are fixed, including anchors, though no doubt the review will find some I've missed. I still have a few small items to tend to tomorrow, but basically Outcome is ready for review! Woohoo! 2018-01-17 23:35:00 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
d52d32c4df
Did manual pass through of Standardese generated docs, inserting hacks and workarounds where necessary to generate a review ready set of reference API docs. These ain't perfect, but they're not awful. 2018-01-17 21:03:44 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f169631604
Fix test regression in clang-tidy cleanup this morning. 2018-01-17 15:13:08 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
6578670cff
clang-tidy round 2 2018-01-17 09:59:30 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0374bf55bf
clang-tidy round 1 2018-01-17 09:10:33 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
ed56d2bd79
Latest Standardese 2018-01-16 21:48:33 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
ff2fc2a0fb
Fix syntax highlighting breakage due to Hugo upgrade 2018-01-15 20:15:41 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b01402c247
Improve documentation for the free function operator== and operator!=. Related to issue #86. 2018-01-15 18:58:44 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
ccb51a3f64
Improved result and outcome class descriptions with links to relevant other docs 2018-01-15 09:54:59 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
29b0ca6cbe
Fix verbatim test case to use standardese notation 2018-01-15 09:25:07 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
076cdf85ad
Fix issue #96 whereby the SFINAE on the iostream operators wasn't working right on libstdc++ 2018-01-14 02:44:32 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
823f933870
Fix reference docs for all_narrow policy (issue #81) 2018-01-12 09:19:51 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
c3459a7a28
Fix regression where comparisons to failure_type was aborting the process. 2018-01-11 09:38:52 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
3e0b8ca28f
Made operator<< and operator>> SFINAEd on whether underlying types provide said operation. 2018-01-11 09:30:27 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
1b054d71a3
Tell standardese about all the detail files too (issue #94) 2018-01-10 19:18:43 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
9b39b9894a
Serialisation of results containing error_code no longer permitted (issue #84) 2018-01-10 19:02:14 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
286f98daf5
Remove the proposed WG21 result reference implementation 2018-01-10 18:51:28 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
62ab35a6b4
Purge the deduced template editions of success/failure sugar types, and eliminate remaining API compatibility with them (issue #93) 2018-01-10 09:54:34 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
d8c72ccb0e
Fix issue #95 (operator conversions on E type cause TRY to fail) 2018-01-10 09:24:42 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
c1aec03d7a
Fix issue #88 (template parameters don't follow the same style) 2018-01-09 19:04:55 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
c62d4077fe
Rewrote outcome's class reference description entirely, the old one was utterly stale beyond belief (issue #81) 2018-01-09 09:49:49 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
be90652520
Removed no_value_type, no_error_type and no_exception_type (issue #81) 2018-01-09 09:18:07 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
7fb6645aa3
Fix issue #84 (Document (de)serialization of result) 2018-01-08 19:19:55 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
3d0a4ad58a
Fix all appearances of enable_if in docs (issue #76) 2018-01-08 18:56:55 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
6f46045b95
Fix appearance of internal macros in docs as mentioned in #82 and #81 2018-01-08 09:38:43 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
dc107a803a
Got the C API exposed in the reference docs 2017-12-14 18:57:08 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
aa42e3db58
Updated tutorial to link into new outcome reference api docs 2017-12-14 09:20:26 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
e624ab4541
upd 2017-12-14 08:14:38 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
11ff0b71a3
upd 2017-12-11 09:54:11 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
061bd25fff
Replaced standardese munge shell script with a much improved python one. 2017-12-08 18:33:20 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com
89fe53ce26
Update with fancy new Markdown docs. Thank you @foonathan! 2017-12-07 19:00:00 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
c91a233cea
upd 2017-12-06 20:53:46 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
388d38aeb7
upd 2017-12-06 09:49:05 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
574ff03333
upd 2017-12-05 22:10:28 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
bccc353a33
Refresh standardese docs 2017-12-02 16:23:11 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
4c506a702b
Fix missing include 2017-11-27 13:19:18 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
5d7494b957
upd 2017-11-27 13:00:41 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
efa8f0b1f7
Fix issue #73, also enable try_throw_std_exception_from_error() to take an optional custom message. 2017-11-27 12:52:35 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
c4c430a5e7
Fix bug where make_exception_ptr() was being called too early. 2017-11-27 12:50:35 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f6ae4350b4
upd 2017-11-20 13:32:58 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b3dc2b0c4f
Fix issue #72 (it was actually already fixed, but the docs were wrong, fixed) 2017-11-20 13:25:37 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
4b73d02e43
Update reference docs 2017-11-18 17:24:15 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
46df77dd1c
Update API docs to reflect implicit conversion requirements. 2017-11-18 16:51:27 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
019be36e9d
Fix failure on clang 2017-11-18 13:26:35 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
4ee19b706c
Fix issue #71 2017-11-18 13:17:35 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
12ef22006f
Replace is_same_or_constructible with is_explicitly_constructible 2017-11-18 12:51:30 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
84ea811ace
Added unit tests for issue #71 2017-11-18 12:44:47 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
6ed238cd18
Finished the tutorial I think?
Fixed build regression on GCC.
2017-11-16 21:31:08 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
194bd7c36e
ValueOrError support is finally compiling and working on all platforms and compilers! 2017-11-15 19:00:23 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
ab1683ef16
Fix build regression 2017-11-15 12:00:41 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
7c8eaaa0c8
Added tutorial section on new ValueOrError support. 2017-11-15 00:17:50 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0dc0cdc91b
ValueOrError concept support finished. 2017-11-14 15:48:57 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
dbeaed2068
Restored the old converting constructors 2017-11-11 12:35:13 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
c542429b09
Implement construction from anything matching the ValueOrError concept 2017-11-10 22:41:47 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
7393ce92b1
Rename try_throw_exception_from_error to try_throw_std_exception_from_error 2017-11-09 17:37:45 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
e9dfe7cabf
Fix issue #69 (execinfo.h doesn't exist on Android) 2017-11-06 01:11:17 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
8ee8cd4467
Reworked the hook support somewhat. Wrote the snippet for the final tutorial section. 2017-11-03 03:23:23 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
1f510e8055
Finished tutorial section on builtin policies 2017-10-31 17:54:44 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
d36cbf7c9e
Apply solutions to Arthur's feedback: (i) have filesystem_error thrower not throw all failures through filesystem_error (ii) make declaration of throw_as_system_error_with_payload() mandatory for custom EC types. 2017-10-31 02:44:59 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
091a983ae0
Updated standardese docs 2017-10-28 02:27:55 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
4a07a87ece
All unit tests now passing with refactored library 2017-10-28 01:57:53 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
bef2b1df89
In theory, outcome is now purged of all payload support. core-result and core-outcome tests pass, next step is the rest of the test suite. 2017-10-28 01:31:10 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
2f5dedb84c
Made a start on purging payload support from outcome 2017-10-27 01:59:25 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
a5599e5112
Ok, I think result is now fully ported over to the new payload capable design. Now just need to purge outcome of payload support. 2017-10-27 01:20:01 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
63553475b1
wip in getting result to throw with payload. 2017-10-26 03:44:58 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
8b5d849717
First step of refactoring payload out of outcome and into result complete. 2017-10-26 01:41:25 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
a0e6c8224e
Fix CI failures 2017-10-21 00:36:16 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0a13d5ae8e
Started tutorial section on constructors 2017-10-20 18:57:40 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
e054470a5c
Added tutorial section on the C API 2017-10-20 02:06:07 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
584013d042
Finished the tutorial section on default actions. 2017-10-19 01:56:42 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
993efbdecd
More tutorial 2017-10-18 18:39:20 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
1a6a8ddee6
Fix build breakage on clang 2017-10-18 14:08:24 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
67fcb49243
wip policies tutorial section 2017-10-18 04:29:16 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
e368a09e52
Yet another round of clang-tidy. Now is completely clean. 2017-10-18 03:29:25 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
be12789232
Second round of clang-tidy automated fixes 2017-10-18 02:50:33 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
59a675096e
First round of automated clang-tidy fixes 2017-10-18 02:36:39 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
19168b8c2b
wip tutorial section on policies 2017-10-18 02:26:11 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f3730a95dc
Restored testing of Outcome with C++ exceptions and RTTI disabled. Fixed minor build regressions when C++ exceptions are disabled. 2017-10-17 23:20:53 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
887e8051dc
Tutorial landing page is now calculated by Hugo with page summaries.
Doc snippets are now tested when building docs on Travis
2017-10-17 22:41:15 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
250fe74b7d
cmake now adds targets for the source code snippets in the docs.
Added new section to the tutorial explaining how to use the payload outcome edition.
2017-10-17 02:53:10 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b27c9248bd
Documented the default policy selection for outcome. Regenerated reference API docs. 2017-10-17 00:58:49 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
817043f438
Finished off implementing the outcome policies. 2017-10-16 23:51:09 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
4e4b43125f
Refrshed API reference docs 2017-10-13 23:55:29 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
914d8d55b7
Updated Readme's changelog as the old one was stale.
Replaced error_code and exception_ptr detection with overridable traits.
2017-10-13 23:16:54 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
68c1e20761
Added in test set of standardese docs 2017-10-11 22:01:41 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
7809f2c4d4
Various standardese related fixes and cleanups 2017-10-09 22:59:28 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
cd7e2de410
Added repro for issue #65 to test suite, yet it appears to pass perfectly on MSVC at least. We'll see what the CIs say. 2017-10-09 15:34:35 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
34b86bd6d8
Temporarily place a set of doxygen dumped reference docs into the Outcome docs website for others to use whilst we work upon Standardese. 2017-10-07 00:45:54 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
6db1f3501a
Finished fixing up the reference API docs for OUTCOME.
Broke out the parameter requirements into a template bool and generalised across result and outcome.

Purged the last of the status test code from the test suite.

Tried getting template deduced success/failure working, but also blows up on clang :(
2017-10-05 02:40:10 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0141101e3c
Fix bug where errno bit wasn't being set 2017-10-04 00:19:46 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
d86cfe3b94
Added docs for C11 macro API 2017-10-03 23:57:45 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
be042a90c7
Fix failure to compile on clang 2017-10-03 22:00:04 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
82e85374c7
Broke up outcome.hpp into many constituent files. 2017-10-03 03:19:55 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
4c8a079d34
Permit relaxation of implicit constructors disable only when error type is one of the common error types 2017-10-03 02:51:10 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
ce4b2d6ae8
Fixed up the reference docs for result at least. Purged the last of the status support. 2017-10-02 02:10:33 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
fb6e92d515
Broke result.hpp out into many separate files for easier compartmentalisation.
Stripped the status support from result, added unchecked<T, E> typedef
2017-10-02 01:22:17 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
4c9b5af8f6
Script converted Outcome seems to fail with clang 4.0, try clang 5.0 2017-09-29 00:02:20 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
7153efbe6c
Lots of small fixes to make a fully working scripted Boost conversion. 2017-09-28 22:32:27 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b23d6ed701
Cleared all remaining warnings on MSVC 2017-09-28 02:10:28 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
cc8e589b54
Added FAQ entry on Outcome's checked<T, E> vs expected<T, E>.
Disabled expected_pass on GCC 6, it won't compile it.
2017-09-28 01:56:55 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
04638284bf
expected_pass was actually quite broken, fixed. 2017-09-28 01:02:20 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
7d8ee1bbc0
Fix breakage from previous commit. 2017-09-28 00:40:15 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
10d139b959
Added in the WG21 Expected reference test suite with an emulated Expected shim. 2017-09-27 23:55:26 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
6089de5475
Fix docs warning 2017-09-26 00:03:18 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
27933fe915
upd 2017-09-24 19:33:56 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
c357b6d441
Fixed Appveyor 2017-09-24 15:20:18 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
84b407e566
Fix appveyor 2017-09-24 04:57:59 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
19866bfa4d
Try forcing the ctest build generator 2017-09-24 04:50:09 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
669ff92dde
upd 2017-09-24 04:34:06 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
cbff53a487
Appveyor use VS2017 2017-09-24 04:24:33 +01:00