Commit Graph

576 Commits

Author SHA1 Message Date
Jenkins nedprod CI
3d3c252808 Merging commit ned14/outcome@d68be2e1ec:
Merged from develop branch as CDash reports all green
2019-01-24 01:23:58 +00:00
Jenkins nedprod CI
c9bc216c1f Merging commit ned14/outcome@e2cba05f41:
Merged from develop branch as CDash reports all green
2019-01-23 01:43:10 +00:00
Jenkins nedprod CI
308b780c0b Merging commit ned14/outcome@aaa7f28bc3:
Merged from develop branch as CDash reports all green
2019-01-19 01:36:48 +00:00
Jenkins nedprod CI
09334ab808 Merging commit ned14/outcome@d5c55d2d6d:
Merged from develop branch as CDash reports all green
2019-01-18 14:04:50 +00:00
Jenkins nedprod CI
d1c7f9742d Merging commit ned14/outcome@f40e82bf54:
Merged from develop branch as CDash reports all green
2019-01-17 01:23:06 +00:00
Jenkins nedprod CI
028579f7a7 Merging commit ned14/outcome@1b5dc25c24:
Merged from develop branch as CDash reports all green
2019-01-17 01:23:05 +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)
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)
7f351d7db8
Moved v1 headers into attic 2017-06-30 20:19:06 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
8b30972033
Reorged test and includes for v2 2017-06-30 20:16:43 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
523ab525f1
Fix failure to find ctest scripting. 2017-06-14 19:54:57 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
7d6625fbc8
Mostly fully ported over to quickcpplib 2017-06-14 16:09:10 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b5a69414ee
Build system ported over to use quickcpplib 2017-06-14 15:28:37 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f3b54fae4d
boost-lite is no more, it is now quickcpplib and lots of its internals have changed. develop branch will be broken for some days until Outcome catches up. 2017-06-14 00:02:50 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
127812aee9
Updated compiler-platform requirements. 2017-05-27 15:24:22 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
62d9bed841
Fix issue #36 mingw-w64 build support 2017-05-24 00:34:55 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
e8c262fa47
Fixed build failure with older clangs with LEWG Expected test suite 2017-05-20 11:34:10 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
28b3f8269e
Issue #11 Changing state should never cause an empty state if avoidable. Outcomes and Expected will now
not lose previous state during assignment or emplacement if the existing state's type has a nothrow
move or copy constructor. It does this by moving the existing state onto the stack before trying to
set the new state, and if that throws it restores the previous state. This new code path only activates
if any of the types stored have throwing move constructors.
2017-05-20 02:11:12 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
51d08d35ca
Issue #23 Get Outcome working on VS2017 Update 1. Thanks to Vinnie Falco for reporting this. 2017-05-19 19:21:28 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
ee7a952a8d
All the recent changes had broken docs generation fairly badly, so did the minimum to get everything passing again. Will at some stage need to rejig the tutorial to match the new changes properly in prose. 2017-05-19 01:16:11 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0c73108cf6
Issue #20 Rename:
- `monad_error` to `bad_outcome`
  - `monad_errc` to `bad_outcome_errc`
  - `monad_category` to `bad_outcome_category`
  - `BOOST_OUTCOME_THROW_MONAD_ERROR` to `BOOST_OUTCOME_THROW_BAD_OUTCOME`
 Thanks to Peter Dimov, Andrzej Krzemienski and Paul Bristow for suggesting this.
2017-05-19 00:47:56 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
e1963be23e
Rename monad_error.hpp to bad_outcome.hpp 2017-05-19 00:41:09 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
22bd10cbd4
Issue #19 Remove observers .is_ready(), .get_error_or(), .get_exception_or(). 2017-05-19 00:27:56 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
966d321caa
Issue #18 result<T> had a .set_exception() which it should not have had. Thanks to Peter Dimov
for reporting this.
2017-05-19 00:20:45 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
dbcde5de08
Issue #14 Removed all the static asserts in the Expected implementation apart from the nothrow
move constructor check, which is now correct unlike the incorrect assert from before. Thanks to
Vicente J. Botet Escriba for explaining Expected's semantics.
2017-05-14 01:28:42 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
bc3c0bbfeb
Issue #15 Move outcome::expected<T, E> into outcome::experimental::expected<T, E>. Thanks to
Vicente J. Botet Escriba for persuading me to do this.

unittests.cpp had become clang-tidy unclean, fixed.
2017-05-14 00:57:13 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
4d9e404fb0
Did another pass of the docs. Very close to peer review ready now. 2017-05-11 01:09:02 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
9274c0d423
Fix issue #10 Expected's operator->(), operator*() and .error() throw exceptions when they should not 2017-05-10 20:35:33 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
1f15abd510
Work around bug in older clangs triggered by last commit 2017-05-09 16:07:55 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
daa5d0f4f3
Implement expected<T, E>::get_unexpected(), which had been missing. 2017-05-09 15:31:38 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
202fba16fb
Converted enable_single_byte_value_storage to be a template variable.
Replaced the global BOOST_OUTCOME_ALLOW_THROWING_MOVE_TYPES macro disable with per type disable via enable_move_throwing_type<T>.

Fix an ambiguous resolution of make_expected_from_error.
2017-05-09 13:03:58 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
baedd98e5c
Clarify the message given when you try using types without nothrow move construction. 2017-05-08 16:47:14 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
665323b7f6
Add static checks for using a value_type, error_type or exception_type which throws during move 2017-05-07 23:50:15 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
bfab416f18
Fix mistake in tutorial A 2017-05-05 13:07:45 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
e61950908c
Update docs to reflect discussions with Vicente about Expected, and reconciliations of the defect list I sent him. 2017-05-05 12:56:55 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
82ed820d0a
Added ACCU conference video to tutorial 2017-05-03 01:02:22 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
48864a7c88
Relicenced all code to be dual Apache 2.0 or Boost licence 2017-05-03 00:46:32 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
d391aee432
Use cmake namespaced target aliases for indicating dependencies between libraries 2017-04-28 14:29:10 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
fab3eead1b
Merge branch 'develop' of github.com:ned14/boost.outcome into develop
# Conflicts:
#	include/boost/outcome/revision.hpp
2017-04-27 16:29:01 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
78115184bb
Work around lack of dependency tracking with Makefiles and Ninja 2017-04-27 16:27:23 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
2a82d14fb2
Have an attempt at a BOOST_OUTCOME_TRYX(expr) expression behaving try operation, implementing issue #9. 2017-04-18 10:48:47 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
76042598dc
upd 2017-04-16 00:50:38 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f1fab55299
upd 2017-04-15 13:10:21 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f0de9b1da5
upd 2017-04-14 22:20:29 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
ee6f2df804
Update todo list 2017-04-14 08:35:22 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
1841848797
Merge branch 'develop' of github.com:ned14/boost.outcome into develop
# Conflicts:
#	include/boost/outcome/revision.hpp
2017-04-12 23:45:29 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
b120ecef17
upd 2017-04-12 23:44:11 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
953e3a062c
Fix build failure on GCC 5 2017-04-12 11:36:37 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
e28beaa7af
upd 2017-04-10 23:05:50 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
df4468529a
upd 2017-04-09 23:09:59 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
e437da0d76
Merge branch 'develop' of github.com:ned14/boost.spinlock into develop 2017-04-09 14:55:36 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0dc8cc8216
Add a note to the docs for make_errored_*(ErrCondEnum). 2017-04-09 14:54:18 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
90b397d29a
upd 2017-04-08 23:53:45 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
2018274cde
Forgot to regen the preprocessed edition 2017-04-08 22:43:44 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
1ef1c6804d
Stop showing permuted boost-lite SHA in doxygen 2017-04-08 22:42:51 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
ad136750f6
Add make_errored_*() overloads for error conditions 2017-04-08 11:01:11 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
25e89e4c45
regen pp header 2017-04-06 14:46:45 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
c9eb55a474
BOOST_OUTCOME_CATCH_EXCEPTION_TO_RESULT wasn't tagging with valueless either 2017-04-06 14:41:02 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0b332aea8a
Fix overstrict valueless constructor 2017-04-06 14:14:13 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
91c8eb0814
valueless_t tagging now working and issue #7 should be fixed 2017-04-06 10:57:52 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
430d9c10dc
wip for issue #7 2017-04-06 09:49:54 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
748e7bab1a
upd 2017-04-04 23:03:06 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
008026f921
upd 2017-04-04 22:55:50 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
1a95acaef5
Add BOOST_OUTCOME_TRYV() macro 2017-04-04 22:23:37 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
1772bbfbc8
Clarify empty braced init semantics 2017-04-04 21:54:30 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
dfdbe1f091
Docs fix 2017-03-30 15:26:09 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
dea2c55e07
Rename all make_ready_* to make_valued_*. Thanks to Andrzej Krzemienski for spotting the problem. 2017-03-30 12:53:20 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
27cb8b799a
Implement more of Andrzej's feedback 2017-03-29 08:07:47 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
9599e0fed5 Remove the hard dependency on python ply for build. 2017-03-23 14:34:01 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
95eb507b7c
Fix missing images in FAQ on web based docs 2017-03-23 11:09:58 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f370bd6473
Fix failure to regenerate preprocessed edition as needed 2017-03-21 00:15:38 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f291beed5f
Upgraded the MSVC workarounds to understand VS2017 RTM.
Fixed all breakage and warnings in all examples etc for VS2017 RTM.
2017-03-20 23:51:29 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
8f7c9ae7e6
Use a pre-processed edition of Outcome for the most common build config. 2017-03-20 16:53:00 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
63eb074214
upd 2017-03-20 00:41:19 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
9a4bc9fca7
Add FAQ entry on ABI stability promises. 2017-03-15 16:54:36 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
e3bc60d429
Resurrected my old very custom clang format plugin for visual studio, forced it into vs2017 against its will and did a clang-format pass on all the source files. 2017-03-14 19:51:23 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
520b8af6f3
Fix build breakage 2017-03-13 15:57:49 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
7525b18392
Restamp the SHA of the docs to latest. 2017-03-13 15:50:30 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
594da2d2b3
Disabled the ability to include Outcome in multiple configs in the same translation unit. pcpp can't grok that use pattern snd so was reincluding the config many times over, thus causing doxygen to generate duplicates of the same docs. Thanks to Andrzej Krzemienski for reporting this. 2017-03-13 15:19:00 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
32435fb60e
Have cmake rebuild the preprocessed doxygen input every build
Fix the terrible looking doxygen page for the boilerplate macros. Thanks to Andrzej Krzemienski for reporting this.
2017-03-13 14:59:43 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
96421f5e3a
travis 2017-03-13 01:58:55 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0b5fe1ab84
travis 2017-03-13 01:54:24 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
93787ade0a
Revert bad merge 2017-03-13 01:48:37 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
4f9816b580
Add missing docs for the policy classes 2017-03-13 01:41:17 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
5b9713b28a
upd 2017-03-13 01:07:46 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
a97cd62c79
Fixed the problem of lack of constructors in the faked outcome/result/option/expected. 2017-03-13 00:26:09 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
2ecd192e1e
Use pcpp to preprocess Outcome into a form which doxygen can cope with. 2017-03-12 23:57:33 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0219b4ff67
Added more help for doxygen to generate actually usable docs 2017-03-11 00:44:56 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
554ab592b3
Relocated the policy classes out of namespace detail into a new namespace policy in preparation for getting doxygen to generate some actually useful reference docs. 2017-03-10 22:53:45 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
eade949002
Fix failure to compile doc examples on clang 3.5 and 4.0 2017-03-01 22:48:44 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
01320023d0
I think I've finished the tutorial! 2017-03-01 17:47:24 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
d903e1f174
Fixed a bug where a less representative void transport was not implicitly converting into a more representative transport. 2017-03-01 16:40:14 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
f222d4ee28
Docs should build properly now. 2017-02-27 23:32:12 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
4e1a096735
Added side by side use example of Expected vs Outcome 2017-02-27 23:09:10 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
a24c020561
Rewrote part B of the tutorial to match feedback from Reddit 2017-02-03 15:46:48 +00:00