Essential

  1. Before we begin

    Essential information before you begin the tutorial.

  2. result<>

    Gentle introduction to writing code with simple success-or-failure return types.

    1. Inspecting result
    2. TRY operations
    3. TRY is greedy
    4. TRY avoiding copy/move
  3. outcome<>

    Success-or-failure return types where failure can take two forms, expected/handled failure and unexpected/abort failure.

    1. Inspecting outcome
  4. No-value policies

    Describes the concept of NoValuePolicy and how to use no-value policies.

    1. A custom no-value policy
    2. Built-in policies
  5. Coroutines

    Using Outcome in C++ Coroutines

    1. Coroutine TRY operation
    2. Coroutine awaitables
    3. Returning Outcome types from Coroutines
    4. operator co_await as TRY operator
  6. Conventions

    Why you should avoid custom E types in public APIs.