load("@fbcode_macros//build_defs:build_file_migration.bzl", "fbcode_target", "non_fbcode_target")
load("@fbcode_macros//build_defs:cpp_library.bzl", "cpp_library")
load("@fbsource//xplat/pfh/triage_InfrastructureSupermoduleOptou:DEFS.bzl", "triage_InfrastructureSupermoduleOptou")
load("../../defs.bzl", "folly_xplat_cxx_library")

oncall("fbcode_entropy_wardens_folly")

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "accumulate",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = [
        "Accumulate.h",
        "Accumulate-inl.h",
    ],
    exported_deps = [
        "//xplat/folly/coro:accumulate",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "async_generator",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["AsyncGenerator.h"],
    exported_deps = [
        "//xplat/folly/coro:async_generator",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "async_pipe",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["AsyncPipe.h"],
    exported_deps = [
        "//xplat/folly/coro:async_pipe",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "async_scope",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["AsyncScope.h"],
    exported_deps = [
        "//xplat/folly/coro:async_scope",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "async_stack",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = [
        "AsyncStack.h",
    ],
    exported_deps = [
        "//xplat/folly/coro:async_stack",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "baton",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["Baton.h"],
    exported_deps = [
        "//xplat/folly/coro:baton",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "blocking_wait",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["BlockingWait.h"],
    exported_deps = [
        "//xplat/folly/coro:blocking_wait",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "collect",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = [
        "Collect.h",
        "Collect-inl.h",
    ],
    exported_deps = [
        "//xplat/folly/coro:collect",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "concat",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = [
        "Concat.h",
        "Concat-inl.h",
    ],
    exported_deps = [
        "//xplat/folly/coro:concat",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "coroutine",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = [
        "Coroutine.h",
    ],
    exported_deps = [
        "//xplat/folly/coro:coroutine",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "current_executor",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["CurrentExecutor.h"],
    exported_deps = [
        "//xplat/folly/coro:current_executor",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "detach_on_cancel",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["DetachOnCancel.h"],
    exported_deps = [
        "//xplat/folly/coro:detach_on_cancel",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "detail_barrier",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["detail/Barrier.h"],
    exported_deps = [
        "//xplat/folly/coro:detail_barrier",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "detail_barrier_task",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["detail/BarrierTask.h"],
    exported_deps = [
        "//xplat/folly/coro:detail_barrier_task",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "detail_current_async_frame",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["detail/CurrentAsyncFrame.h"],
    exported_deps = [
        "//xplat/folly/coro:detail_current_async_frame",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "detail_helpers",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["detail/Helpers.h"],
    exported_deps = [
        "//xplat/folly/coro:detail_helpers",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "detail_malloc",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["detail/Malloc.h"],
    exported_deps = [
        "//xplat/folly/coro:detail_malloc",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "detail_manual_lifetime",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["detail/ManualLifetime.h"],
    exported_deps = [
        "//xplat/folly/coro:detail_manual_lifetime",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "detail_traits",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["detail/Traits.h"],
    exported_deps = [
        "//xplat/folly/coro:detail_traits",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "filter",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = [
        "Filter.h",
        "Filter-inl.h",
    ],
    exported_deps = [
        "//xplat/folly/coro:filter",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "future_util",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["FutureUtil.h"],
    exported_deps = [
        "//xplat/folly/coro:future_util",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "generator",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["Generator.h"],
    exported_deps = [
        "//xplat/folly/coro:generator",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "gtest_helpers",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["GtestHelpers.h"],
    exported_deps = [
        "//xplat/folly/coro:gtest_helpers",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "gmock_helpers",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["GmockHelpers.h"],
    exported_deps = [
        "//xplat/folly/coro:gmock_helpers",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "inline_task",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["detail/InlineTask.h"],
    exported_deps = [
        "//xplat/folly/coro:inline_task",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "invoke",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["Invoke.h"],
    exported_deps = [
        "//xplat/folly/coro:invoke",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "merge",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = [
        "Merge.h",
        "Merge-inl.h",
    ],
    exported_deps = [
        "//xplat/folly/coro:merge",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "mutex",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["Mutex.h"],
    exported_deps = [
        "//xplat/folly/coro:mutex",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "promise",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["Promise.h"],
    exported_deps = [
        "//xplat/folly/coro:promise",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "shared_promise",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["SharedPromise.h"],
    exported_deps = [
        "//xplat/folly/coro:shared_promise",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "result",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["Result.h"],
    exported_deps = [
        "//xplat/folly/coro:result",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "retry",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["Retry.h"],
    exported_deps = [
        "//xplat/folly/coro:retry",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "scope_exit",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["ScopeExit.h"],
    exported_deps = [
        "//xplat/folly/coro:scope_exit",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "shared_lock",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["SharedLock.h"],
    exported_deps = [
        "//xplat/folly/coro:shared_lock",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "shared_mutex",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["SharedMutex.h"],
    exported_deps = [
        "//xplat/folly/coro:shared_mutex",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "sleep",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = [
        "Sleep.h",
        "Sleep-inl.h",
    ],
    exported_deps = [
        "//xplat/folly/coro:sleep",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "small_unbounded_queue",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["SmallUnboundedQueue.h"],
    exported_deps = [
        "//xplat/folly/coro:small_unbounded_queue",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "task",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["Task.h"],
    exported_deps = [
        "//xplat/folly/coro:task",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "timed_wait",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["TimedWait.h"],
    exported_deps = [
        "//xplat/folly/coro:timed_wait",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "timeout",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = [
        "Timeout.h",
        "Timeout-inl.h",
    ],
    exported_deps = [
        "//xplat/folly/coro:timeout",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "traits",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["Traits.h"],
    exported_deps = [
        "//xplat/folly/coro:traits",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "transform",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = [
        "Transform.h",
        "Transform-inl.h",
    ],
    exported_deps = [
        "//xplat/folly/coro:transform",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "bounded_queue",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["BoundedQueue.h"],
    exported_deps = [
        "//xplat/folly/coro:bounded_queue",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "unbounded_queue",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["UnboundedQueue.h"],
    exported_deps = [
        "//xplat/folly/coro:unbounded_queue",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "via_if_async",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["ViaIfAsync.h"],
    exported_deps = [
        "//xplat/folly/coro:via_if_async",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "with_async_stack",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["WithAsyncStack.h"],
    exported_deps = [
        "//xplat/folly/coro:with_async_stack",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "with_cancellation",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = ["WithCancellation.h"],
    exported_deps = [
        "//xplat/folly/coro:with_cancellation",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "cleanup",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = [
        "Cleanup.h",
    ],
    exported_deps = [
        "//xplat/folly/coro:cleanup",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "auto_cleanup_fwd",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = [
        "AutoCleanup-fwd.h",
    ],
    exported_deps = [
        "//xplat/folly/coro:auto_cleanup_fwd",
    ],
)

non_fbcode_target(
    _kind = folly_xplat_cxx_library,
    name = "auto_cleanup",
    feature = triage_InfrastructureSupermoduleOptou,
    raw_headers = [
        "AutoCleanup.h",
    ],
    exported_deps = [
        "//xplat/folly/coro:auto_cleanup",
    ],
)

# !!!! fbcode/folly/experimental/coro/TARGETS was merged into this file, see https://fburl.com/workplace/xl8l9yuo for more info !!!!

fbcode_target(
    _kind = cpp_library,
    name = "async_generator",
    headers = [
        "AsyncGenerator.h",
    ],
    exported_deps = [
        "//folly/coro:async_generator",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "async_pipe",
    headers = [
        "AsyncPipe.h",
    ],
    exported_deps = [
        "//folly/coro:async_pipe",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "async_scope",
    headers = [
        "AsyncScope.h",
    ],
    exported_deps = [
        "//folly/coro:async_scope",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "async_stack",
    headers = [
        "AsyncStack.h",
    ],
    exported_deps = [
        "//folly/coro:async_stack",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "baton",
    headers = [
        "Baton.h",
    ],
    exported_deps = [
        "//folly/coro:baton",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "blocking_wait",
    headers = [
        "BlockingWait.h",
    ],
    exported_deps = [
        "//folly/coro:blocking_wait",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "collect",
    headers = [
        "Collect.h",
        "Collect-inl.h",
    ],
    exported_deps = [
        "//folly/coro:collect",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "concat",
    headers = [
        "Concat.h",
        "Concat-inl.h",
    ],
    exported_deps = [
        "//folly/coro:concat",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "coroutine",
    headers = [
        "Coroutine.h",
    ],
    exported_deps = [
        "//folly/coro:coroutine",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "current_executor",
    headers = [
        "CurrentExecutor.h",
    ],
    exported_deps = [
        "//folly/coro:current_executor",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "detach_on_cancel",
    headers = [
        "DetachOnCancel.h",
    ],
    exported_deps = [
        "//folly/coro:detach_on_cancel",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "detail_barrier",
    headers = [
        "detail/Barrier.h",
    ],
    exported_deps = [
        "//folly/coro:detail_barrier",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "detail_barrier_task",
    headers = [
        "detail/BarrierTask.h",
    ],
    exported_deps = [
        "//folly/coro:detail_barrier_task",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "detail_current_async_frame",
    headers = [
        "detail/CurrentAsyncFrame.h",
    ],
    exported_deps = [
        "//folly/coro:detail_current_async_frame",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "detail_helpers",
    headers = [
        "detail/Helpers.h",
    ],
    exported_deps = [
        "//folly/coro:detail_helpers",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "detail_malloc",
    headers = [
        "detail/Malloc.h",
    ],
    exported_deps = [
        "//folly/coro:detail_malloc",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "detail_manual_lifetime",
    headers = [
        "detail/ManualLifetime.h",
    ],
    exported_deps = [
        "//folly/coro:detail_manual_lifetime",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "detail_traits",
    headers = [
        "detail/Traits.h",
    ],
    exported_deps = [
        "//folly/coro:detail_traits",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "filter",
    headers = [
        "Filter.h",
        "Filter-inl.h",
    ],
    exported_deps = [
        "//folly/coro:filter",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "future_util",
    headers = [
        "FutureUtil.h",
    ],
    exported_deps = [
        "//folly/coro:future_util",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "generator",
    headers = [
        "Generator.h",
    ],
    exported_deps = [
        "//folly/coro:generator",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "gmock_helpers",
    headers = [
        "GmockHelpers.h",
    ],
    exported_deps = [
        "//folly/coro:gmock_helpers",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "gtest_helpers",
    headers = [
        "GtestHelpers.h",
    ],
    exported_deps = [
        "//folly/coro:gtest_helpers",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "inline_task",
    headers = [
        "detail/InlineTask.h",
    ],
    exported_deps = [
        "//folly/coro:inline_task",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "invoke",
    headers = [
        "Invoke.h",
    ],
    exported_deps = [
        "//folly/coro:invoke",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "merge",
    headers = [
        "Merge.h",
        "Merge-inl.h",
    ],
    exported_deps = [
        "//folly/coro:merge",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "mutex",
    headers = [
        "Mutex.h",
    ],
    exported_deps = [
        "//folly/coro:mutex",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "promise",
    headers = [
        "Promise.h",
    ],
    exported_deps = [
        "//folly/coro:promise",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "result",
    headers = [
        "Result.h",
    ],
    exported_deps = [
        "//folly/coro:result",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "retry",
    headers = [
        "Retry.h",
    ],
    exported_deps = [
        "//folly/coro:retry",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "rust_adaptors",
    headers = [
        "RustAdaptors.h",
    ],
    exported_deps = [
        "//folly/coro:rust_adaptors",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "scope_exit",
    headers = [
        "ScopeExit.h",
    ],
    exported_deps = [
        "//folly/coro:scope_exit",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "shared_lock",
    headers = [
        "SharedLock.h",
    ],
    exported_deps = [
        "//folly/coro:shared_lock",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "shared_mutex",
    headers = [
        "SharedMutex.h",
    ],
    exported_deps = [
        "//folly/coro:shared_mutex",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "sleep",
    headers = [
        "Sleep.h",
        "Sleep-inl.h",
    ],
    exported_deps = [
        "//folly/coro:sleep",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "small_unbounded_queue",
    headers = [
        "SmallUnboundedQueue.h",
    ],
    exported_deps = [
        "//folly/coro:small_unbounded_queue",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "task",
    headers = [
        "Task.h",
    ],
    exported_deps = [
        "//folly/coro:task",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "timed_wait",
    headers = [
        "TimedWait.h",
    ],
    exported_deps = [
        "//folly/coro:timed_wait",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "timeout",
    headers = [
        "Timeout.h",
        "Timeout-inl.h",
    ],
    exported_deps = [
        "//folly/coro:timeout",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "traits",
    headers = [
        "Traits.h",
    ],
    exported_deps = [
        "//folly/coro:traits",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "transform",
    headers = [
        "Transform.h",
        "Transform-inl.h",
    ],
    exported_deps = [
        "//folly/coro:transform",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "unbounded_queue",
    headers = [
        "UnboundedQueue.h",
    ],
    exported_deps = [
        "//folly/coro:unbounded_queue",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "via_if_async",
    headers = [
        "ViaIfAsync.h",
    ],
    exported_deps = [
        "//folly/coro:via_if_async",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "with_async_stack",
    headers = [
        "WithAsyncStack.h",
    ],
    exported_deps = [
        "//folly/coro:with_async_stack",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "with_cancellation",
    headers = [
        "WithCancellation.h",
    ],
    exported_deps = [
        "//folly/coro:with_cancellation",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "bounded_queue",
    headers = [
        "BoundedQueue.h",
    ],
    exported_deps = [
        "//folly/coro:bounded_queue",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "shared_promise",
    headers = [
        "SharedPromise.h",
    ],
    exported_deps = [
        "//folly/coro:shared_promise",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "cleanup",
    headers = [
        "Cleanup.h",
    ],
    exported_deps = [
        "//folly/coro:cleanup",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "auto_cleanup_fwd",
    headers = [
        "AutoCleanup-fwd.h",
    ],
    exported_deps = [
        "//folly/coro:auto_cleanup_fwd",
    ],
)

fbcode_target(
    _kind = cpp_library,
    name = "auto_cleanup",
    headers = [
        "AutoCleanup.h",
    ],
    exported_deps = [
        "//folly/coro:auto_cleanup",
    ],
)
