| /system/utest/fit/ |
| A D | result_tests.cpp | 26 fit::result<> good = fit::ok(); in states() 33 fit::result<> bad = fit::error(); in states() 40 fit::result<> pending = fit::pending(); in states() 60 fit::result<> good = fit::ok(); in void_value_and_error() 63 fit::result<> bad = fit::error(); in void_value_and_error() 80 fit::result<> tmpsrc = fit::ok(); in void_value_and_error() 99 fit::result<Copyable> bad = fit::error(); in copyable_value() 183 fit::result<MoveOnly> bad = fit::error(); in moveonly_value() 279 static_assert(fit::result<>(fit::ok()).state() == fit::result_state::ok, ""); 282 static_assert(fit::result<>(fit::ok()), ""); [all …]
|
| A D | promise_tests.cpp | 102 fit::function<fit::result<>(fit::context&)> f; in empty_promise() 108 std::function<fit::result<>(fit::context&)> f; in empty_promise() 121 fit::promise<> promise([&](fit::context& context) -> fit::result<> { in invocation() 147 fit::promise<> promise([&](fit::context& context) -> fit::result<> { in take_continuation() 154 fit::function<fit::result<>(fit::context&)> f = promise.take_continuation(); in take_continuation() 174 fit::promise<> promise([&](fit::context& context) -> fit::result<> { in assignment_and_swap() 205 y = [&](fit::context& context) -> fit::result<> { in assignment_and_swap() 237 fit::promise<> promise([&](fit::context& context) -> fit::result<> { in comparison_with_nullptr() 1146 fit::function<fit::result<>(fit::context&)>>::value, 1159 -> fit::result<> { return fit::pending(); }; in __anon5af905b73e02() [all …]
|
| A D | single_threaded_executor_tests.cpp | 26 executor.schedule_task(fit::make_promise([&](fit::context& context) { in running_tasks() 53 executor.schedule_task(fit::make_promise([&](fit::context& context) in suspending_and_resuming_tasks() 64 executor.schedule_task(fit::make_promise([&](fit::context& context) in suspending_and_resuming_tasks() 77 executor.schedule_task(fit::make_promise([&](fit::context& context) in suspending_and_resuming_tasks() 90 executor.schedule_task(fit::make_promise([&](fit::context& context) in suspending_and_resuming_tasks() 99 executor.schedule_task(fit::make_promise([&](fit::context& context) in suspending_and_resuming_tasks() 141 [&, d = fit::defer([&] { destruction[0]++; })]() -> fit::result<> { in abandoning_tasks() 149 [&, d = fit::defer([&] { destruction[1]++; })](fit::context& context) in abandoning_tasks() 159 [&, d = fit::defer([&] { destruction[2]++; })](fit::context& context) in abandoning_tasks() 169 [&, d = fit::defer([&] { destruction[3]++; })](fit::context& context) in abandoning_tasks() [all …]
|
| A D | variant_tests.cpp | 237 fit::internal::variant<fit::internal::monostate>>::value, 265 fit::internal::variant<fit::internal::monostate>>::value, 294 fit::internal::variant<fit::internal::monostate>>::value, 323 fit::internal::variant<fit::internal::monostate>>::value, 357 fit::internal::variant<fit::internal::monostate, int>>::value, 362 fit::internal::variant<fit::internal::monostate, int>>::value, 367 fit::internal::variant<fit::internal::monostate, int>>::value, 371 fit::internal::variant<fit::internal::monostate, int>>::value, 375 fit::internal::variant<fit::internal::monostate, int>>::value, 379 fit::internal::variant<fit::internal::monostate, int>>::value, [all …]
|
| A D | bridge_tests.cpp | 293 fit::result<> result = fit::run_single_threaded( in completer_bind_no_arg_callback() 307 fit::result<std::tuple<>> result = fit::run_single_threaded( in completer_bind_no_arg_callback() 327 fit::result<std::string> result = fit::run_single_threaded( in completer_bind_one_arg_callback() 342 fit::result<std::tuple<std::string>> result = fit::run_single_threaded( in completer_bind_one_arg_callback() 363 fit::result<std::tuple<std::string, int>> result = fit::run_single_threaded( in completer_bind_two_arg_callback() 540 &executor, fit::make_promise([&](fit::context& context) { in schedule_for_consumer() 550 .then([&](fit::context& context, fit::result<int> result) { in schedule_for_consumer() 566 &executor, fit::make_promise([&](fit::context& context) in schedule_for_consumer() 579 .then([&](fit::context& context, fit::result<int> result) { in schedule_for_consumer() 595 &executor, fit::make_promise([&](fit::context& context) in schedule_for_consumer() [all …]
|
| A D | future_tests.cpp | 57 fit::future<> nihil(fit::promise<>(nullptr)); in empty_future() 69 fit::future<> nihil(fit::pending()); in empty_future() 89 fit::future<int, int> fut(fit::make_promise([&](fit::context& context) in pending_future() 123 fut = fit::make_promise([&](fit::context& context) in pending_future() 145 fit::future<int> fut(fit::ok(42)); in ok_future() 188 fit::future<void, int> fut(fit::error(42)); in error_future() 230 fit::future<> x; in assignment_and_swap() 233 x = fit::ok(); in assignment_and_swap() 236 x = fit::error(); in assignment_and_swap() 270 auto fut = fit::make_future(fit::make_promise([&] { in make_future() [all …]
|
| A D | nullable_tests.cpp | 124 static_assert(fit::is_comparable_with_null<fit::nullable<int>>::value, ""); 125 static_assert(fit::is_comparable_with_null<fit::nullable<void*>>::value, ""); 143 static_assert(fit::is_nullable<fit::nullable<int>>::value, ""); 144 static_assert(fit::is_nullable<fit::nullable<void*>>::value, ""); 154 static_assert(fit::is_null(fit::nullable<void*>(nullptr)), ""); 156 static_assert(!fit::is_null(fit::nullable<void*>(void_a)), ""); 331 fit::nullable<T> c; in construct_copy() 351 fit::nullable<T> c; in construct_move() 419 fit::nullable<T> c; in assign_copy() 470 fit::nullable<T> c; in assign_move() [all …]
|
| A D | pending_task_tests.cpp | 12 class fake_context : public fit::context { 28 fit::pending_task empty; in empty_task() 34 fit::pending_task empty(fit::promise<>(nullptr)); in empty_task() 40 fit::pending_task empty(fit::promise<double, int>(nullptr)); in empty_task() 55 fit::pending_task task(fit::make_promise([&]() -> fit::result<> { in non_empty_task() 57 return fit::ok(); in non_empty_task() 58 return fit::pending(); in non_empty_task() 78 fit::pending_task task(fit::make_promise([&]() -> fit::result<int> { in non_empty_task() 80 return fit::ok(0); in non_empty_task() 81 return fit::pending(); in non_empty_task() [all …]
|
| A D | scope_tests.cpp | 55 fit::scope scope_; 105 fit::scope scope; in exit_destroys_wrapped_promises() 111 [d = fit::defer([&] { destroyed[0] = true; })] { return fit::ok(); })); in exit_destroys_wrapped_promises() 113 [d = fit::defer([&] { destroyed[1] = true; })] { return fit::ok(); })); in exit_destroys_wrapped_promises() 115 [d = fit::defer([&] { destroyed[2] = true; })] { return fit::ok(); })); in exit_destroys_wrapped_promises() 137 [d = fit::defer([&] { destroyed[3] = true; })] { return fit::ok(); })); in exit_destroys_wrapped_promises() 155 fit::scope scope; in double_wrap() 165 fit::make_promise( in double_wrap() 166 [&, d = fit::defer([&] { destroyed = true; })](fit::context& context) { in double_wrap() 194 fit::scope scope; in thread_safety() [all …]
|
| A D | sequencer_tests.cpp | 20 fit::sequencer seq; in sequencing_tasks() 30 auto b = fit::make_promise([&](fit::context& context) { in sequencing_tasks() 37 .then([&, count = 0](fit::context& context, fit::result<>) mutable in sequencing_tasks() 38 -> fit::result<> { in sequencing_tasks() 45 return fit::pending(); in sequencing_tasks() 49 auto c = fit::make_promise([&](fit::context& context) { in sequencing_tasks() 52 return fit::pending(); in sequencing_tasks() 67 fit::single_threaded_executor executor; in sequencing_tasks() 85 fit::sequencer seq; in thread_safety() 86 fit::single_threaded_executor executor; in thread_safety() [all …]
|
| A D | traits_tests.cpp | 14 static_assert(std::is_same<fit::void_t<>, void>::value, ""); 15 static_assert(std::is_same<fit::void_t<int>, void>::value, ""); 16 static_assert(std::is_same<fit::void_t<int, int>, void>::value, ""); 21 void invoke_with_defaults(Callable c, fit::parameter_pack<Args...>) { in invoke_with_defaults() 45 using Traits = fit::callable_traits<Callable>; 96 using Traits = FunctorTraitsTest<fit::function<int(float, bool)>>; 104 static_assert(!fit::is_callable<void>::value, ""); 105 static_assert(!fit::is_callable<int>::value, ""); 106 static_assert(!fit::is_callable<int(float, bool)>::value, ""); 107 static_assert(fit::is_callable<int (*)(float, bool)>::value, ""); [all …]
|
| A D | defer_tests.cpp | 50 fit::deferred_action<T> d; in default_construction() 60 fit::deferred_action<T> d(nullptr); in null_construction() 68 static_assert(fit::is_nullable<fit::deferred_action<T>>::value, ""); in basic() 447 auto action = fit::defer<T>( in target_destroyed_when_scope_exited() 467 auto action = fit::defer<T>( in target_destroyed_when_called() 491 auto action = fit::defer<T>( in target_destroyed_when_canceled() 515 auto action = fit::defer<T>( in target_destroyed_when_move_constructed() 539 auto action = fit::defer<T>( in target_destroyed_when_move_assigned() 564 RUN_TEST(basic<fit::closure>) 566 RUN_TEST(cancel<fit::closure>) [all …]
|
| A D | scheduler_tests.cpp | 12 class fake_context : public fit::context { 29 fit::subtle::scheduler scheduler; in initial_state() 40 fit::subtle::scheduler scheduler; in schedule_task() 95 fit::subtle::scheduler scheduler; in ticket_obtain_finalize_without_task() 102 fit::pending_task task; in ticket_obtain_finalize_without_task() 114 fit::subtle::scheduler scheduler; in ticket_obtain_finalize_with_task() 135 fit::subtle::scheduler scheduler; in ticket_obtain2_duplicate_finalize_release() 169 fit::subtle::scheduler scheduler; in ticket_obtain2_duplicate_finalize_resume() 210 fit::subtle::scheduler scheduler; in ticket_obtain2_release_finalize() 237 fit::subtle::scheduler scheduler; in ticket_obtain2_resume_finalize() [all …]
|
| A D | optional_tests.cpp | 74 fit::optional<T> opt; in construct_without_value() 113 fit::optional<T> c; in construct_copy() 131 fit::optional<T> c; in construct_move() 183 a = fit::nullopt; in assign() 195 fit::optional<T> c; in assign_copy() 243 fit::optional<T> c; in assign_move() 282 fit::optional<T> a; in emplace() 314 fit::optional<T> d; in comparisons() 315 fit::optional<T> e; in comparisons() 360 fit::optional<T> c; in swapping() [all …]
|
| A D | function_tests.cpp | 576 int arg_count(fit::closure) { in arg_count() 579 int arg_count(fit::function<void(int)>) { in arg_count() 595 fit::function<Closure> fnull; in sharing() 606 fit::function<Closure> finline = in sharing() 639 fit::function<Closure> fheap = in sharing() 672 fit::inline_function<Closure> fbad; in sharing() 709 fit::bind_member(&obj, &Obj::Call)(); in bind_member() 755 RUN_TEST((closure<fit::function<Closure>>)) 756 RUN_TEST((binary_op<fit::function<BinaryOp>>)) 757 RUN_TEST((closure<fit::function<Closure, 0u>>)) [all …]
|
| A D | result_examples.cpp | 12 fit::result<int, std::string> divide(int dividend, int divisor) { in divide() 14 return fit::error<std::string>("divide by zero"); in divide() 15 return fit::ok(dividend / divisor); in divide() 28 fit::result<> open(std::string secret) { in open() 32 return fit::ok(); in open() 35 return fit::error(); in open()
|
| A D | suspended_task_tests.cpp | 20 class fake_resolver : public fit::suspended_task::resolver { 24 fit::suspended_task::ticket obtain_ticket() { in obtain_ticket() 36 fit::suspended_task::ticket duplicate_ticket( in duplicate_ticket() 37 fit::suspended_task::ticket ticket) override { in duplicate_ticket() 53 fit::suspended_task::ticket next_ticket_ = 1; 62 fit::suspended_task empty1; in test() 65 fit::suspended_task empty2(nullptr, 42); in test() 68 fit::suspended_task empty_copy(empty1); in test() 81 fit::suspended_task task_copy(task); in test() 95 fit::suspended_task x; in test() [all …]
|
| /system/utest/fit/examples/ |
| A D | promise_example1.cpp | 17 fit::promise<int, std::string> pick_bananas(int hours) { in pick_bananas() 18 return fit::make_promise([hours, time = 0, harvest = 0](fit::context& context) mutable in pick_bananas() 40 return fit::pending(); in pick_bananas() 42 return fit::ok(harvest); in pick_bananas() 47 return fit::make_promise([appetite](fit::context& context) mutable in eat_bananas() 56 return fit::pending(); in eat_bananas() 59 return fit::ok(); in eat_bananas() 63 fit::promise<> prepare_simulation() { in prepare_simulation() 70 return fit::ok(harvest); in prepare_simulation() 80 return fit::error(); in prepare_simulation() [all …]
|
| A D | promise_example2.cpp | 23 return fit::make_promise([player, type, number_of_sides](fit::context& context) in roll_die() 30 return fit::error(); in roll_die() 35 return fit::pending(); in roll_die() 40 return fit::ok(value); in roll_die() 64 return fit::make_promise( in roll_for_damage() 68 effect_multiplier = fit::future<int>()](fit::context& context) mutable in roll_for_damage() 69 -> fit::result<int> { in roll_for_damage() 117 std::tuple<fit::result<int>, fit::result<int>> damages) mutable in play_round() 143 return fit::make_promise([red_hp = 100, blue_hp = 100](fit::context& context) mutable { in play_game() 149 round = fit::future<bool>()](fit::context& context) mutable in play_game() [all …]
|
| A D | utils.cpp | 16 fit::promise<> sleep_for_a_little_while() { in sleep_for_a_little_while() 19 return fit::make_promise([waited = false](fit::context& context) mutable { in sleep_for_a_little_while() 27 void resume_in_a_little_while(fit::suspended_task task) { in resume_in_a_little_while()
|
| /system/ulib/fit/include/lib/fit/ |
| A D | sequencer.h | 15 namespace fit { 54 fit::bridge<> bridge; in decltype() 55 fit::consumer<> prior = swap_prior(std::move(bridge.consumer)); in decltype() 56 return prior.promise_or(fit::ok()) in decltype() 59 fit::context& context, fit::result<>) mutable { in decltype() 75 fit::consumer<> swap_prior(fit::consumer<> new_prior); 80 fit::consumer<> prior_ FIT_GUARDED(mutex_);
|
| A D | promise_internal.h | 19 namespace fit { 91 return ::fit::ok(); 198 return ::fit::pending(); 452 return ::fit::pending(); 474 return ::fit::pending(); 498 return ::fit::pending(); 539 fit::result<> operator()(::fit::context& context) { 541 return ::fit::pending(); 542 return ::fit::ok(); 571 ::fit::context& context) { [all …]
|
| A D | bridge.h | 10 namespace fit { 141 using completer_type = ::fit::completer<V, E>; 142 using consumer_type = ::fit::consumer<V, E>; 147 ::fit::internal::bridge_state<V, E>::create( in bridge() 193 using result_type = ::fit::result<V, E>; 229 ::fit::ok()); in complete_ok() 249 ::fit::error()); in complete_error() 282 ::fit::internal::bridge_bind_callback<V, E> bind() { in bind() 284 return ::fit::internal::bridge_bind_callback<V, E>( in bind() 341 using result_type = ::fit::result<V, E>; [all …]
|
| A D | promise.h | 19 namespace fit { 282 using promise = promise_impl<function<result<V, E>(fit::context&)>>; 289 ::fit::internal::is_continuation<Continuation>::value, 302 using result_type = typename ::fit::internal::continuation_traits< 661 ::fit::internal::discard_result_continuation<promise_impl>( in discard_result() 860 ::fit::internal::promise_continuation<PromiseHandler>( in make_promise() 884 inline promise_impl<::fit::internal::join_continuation<Promises...>> 1046 bool is_ok() const { return state() == fit::future_state::ok; } in is_ok() 1063 bool operator()(fit::context& context) { in operator() 1225 ::fit::internal::variant<::fit::internal::monostate, [all …]
|
| /system/ulib/fit/ |
| A D | sequencer.cpp | 10 namespace fit { namespace 16 fit::bridge<> bridge; in sequencer() 22 fit::consumer<> sequencer::swap_prior(fit::consumer<> new_prior) { in swap_prior() 24 fit::consumer<> old_prior = std::move(prior_); in swap_prior()
|