Uni20
Asynchronous tensor and runtime library.
Loading...
Searching...
No Matches
Classes | Public Types | Static Public Member Functions | List of all members
uni20::TaskRegistry Class Reference

No-op task registry implementation for non-debug async builds. More...

#include <task_registry_dummy.hpp>

Classes

struct  CoroutineExceptionDiagnosticsOptions
 Automatic coroutine-exception dump policy mirrored from the debug registry. More...
 
struct  DiagnosticsServiceOptions
 Diagnostics-service options mirrored from the debug registry interface. More...
 
struct  GraphvizDumpOptions
 File-output options mirrored from the debug registry interface. More...
 

Public Types

enum class  DumpMode { None , Basic , Full }
 Verbosity levels mirrored from the debug registry interface. More...
 
enum class  EpochTaskRole { Reader , Writer }
 Reader/writer role mirrored from the debug registry interface. More...
 
using GraphDiagnostics = TaskRegistryGraphDiagnostics
 Structured async DAG diagnostic result type mirrored from the debug registry.
 
using GraphSnapshot = TaskRegistryGraphSnapshot
 Structured async DAG snapshot type mirrored from the debug registry.
 
using StacktraceOptions = TaskRegistryStacktraceOptions
 Runtime controls for stacktrace formatting mirrored from the debug registry.
 
enum class  TaskState {
  Constructed , Running , Suspended , Failed ,
  Leaked
}
 Lifecycle states mirrored from the debug registry interface. More...
 

Static Public Member Functions

static constexpr void bind_epoch_task (async::EpochContext const *epoch_context, std::coroutine_handle<> h, EpochTaskRole role) noexcept
 No-op epoch-task binding hook.
 
static CoroutineExceptionDiagnosticsOptions coroutine_exception_diagnostics_options ()
 Returns a disabled automatic exception-diagnostics policy in dummy mode.
 
static CoroutineExceptionDiagnosticsOptions default_coroutine_exception_diagnostics_options ()
 Returns a disabled automatic exception-diagnostics policy in dummy mode.
 
static DiagnosticsServiceOptions default_diagnostics_service_options ()
 Builds default diagnostics-service options in dummy mode.
 
static GraphvizDumpOptions default_graphviz_dump_options ()
 Builds default file-output options in dummy mode.
 
static std::string default_graphviz_dump_path ()
 Builds a dummy default Graphviz dump path.
 
static std::string default_graphviz_dump_path (GraphvizDumpOptions const &options)
 Builds a dummy default Graphviz dump path.
 
static StacktraceOptions default_stacktrace_options ()
 Builds default stacktrace formatting options in dummy mode.
 
static constexpr void destroy_epoch_context (async::EpochContext const *epoch_context) noexcept
 No-op epoch-context destruction hook.
 
static constexpr void destroy_task (std::coroutine_handle<> h) noexcept
 No-op task destruction hook.
 
static GraphDiagnostics diagnose_snapshot (GraphSnapshot const &snapshot)
 Returns empty diagnostics for a graph snapshot in dummy mode.
 
static constexpr void dump () noexcept
 No-op global dump hook.
 
static constexpr void dump_epoch_context (async::EpochContext const *epoch_context, char const *reason=nullptr) noexcept
 No-op epoch-context dump hook.
 
static void dump_graphviz (std::FILE *stream=stderr)
 Prints an empty Graphviz DOT document in dummy mode.
 
static bool dump_graphviz_file (std::string const &path)
 Writes an empty Graphviz DOT document in dummy mode.
 
static bool dump_graphviz_file_best_effort (std::string const &path)
 Writes an empty best-effort Graphviz DOT document in dummy mode.
 
static constexpr DumpMode dump_mode () noexcept
 Returns DumpMode::None in dummy mode.
 
static std::vector< std::coroutine_handle<> > epoch_reader_tasks (async::EpochContext const *epoch_context)
 Returns an empty reader list in dummy mode.
 
static std::vector< std::coroutine_handle<> > epoch_writer_tasks (async::EpochContext const *epoch_context)
 Returns an empty writer list in dummy mode.
 
static std::string graphviz_dot ()
 Returns an empty Graphviz DOT document in dummy mode.
 
static std::string graphviz_dot (GraphSnapshot const &snapshot)
 Renders a graph snapshot as Graphviz DOT in dummy mode.
 
static std::string graphviz_dot (GraphSnapshot const &snapshot, GraphDiagnostics const &diagnostics)
 Renders a graph snapshot and diagnostics as Graphviz DOT in dummy mode.
 
static std::string graphviz_dot_best_effort ()
 Returns an empty best-effort Graphviz DOT document in dummy mode.
 
static constexpr void leak_task (std::coroutine_handle<> h) noexcept
 No-op task leak hook.
 
static constexpr void mark_running (std::coroutine_handle<> h) noexcept
 No-op running-state hook.
 
static constexpr void mark_suspended (std::coroutine_handle<> h) noexcept
 No-op suspended-state hook.
 
static void name_async_value (async::NodeInfo const *node, std::string const &label) noexcept
 No-op async value label hook.
 
static void name_task (std::coroutine_handle<> h, std::string const &label) noexcept
 No-op task label hook.
 
static constexpr void record_await_dependency (std::coroutine_handle<> h, async::NodeInfo const *node, EpochTaskRole role) noexcept
 No-op concrete await DAG dependency hook.
 
static constexpr void record_task_dependencies (std::coroutine_handle<> h, std::vector< async::NodeInfo const * > const &read_dependencies, std::vector< async::NodeInfo const * > const &write_dependencies) noexcept
 No-op coarse DAG dependency hook.
 
static constexpr void record_task_scheduled (std::coroutine_handle<> h) noexcept
 No-op scheduler submission provenance hook.
 
static constexpr void record_unhandled_exception (std::coroutine_handle<> h, std::exception_ptr exception, bool originating_failure) noexcept
 No-op unhandled-exception hook.
 
static constexpr void register_epoch_context (async::EpochContext const *epoch_context) noexcept
 No-op epoch-context registration hook.
 
static constexpr void register_task (std::coroutine_handle<> h) noexcept
 No-op task registration hook.
 
static constexpr void request_graphviz_dump () noexcept
 No-op dump request hook in dummy mode.
 
static constexpr void reset_coroutine_exception_diagnostics_options () noexcept
 No-op automatic exception-diagnostics policy reset in dummy mode.
 
static constexpr void reset_stacktrace_options () noexcept
 Resets stacktrace formatting options in dummy mode.
 
static bool service_debug_requests () noexcept
 No-op request service hook in dummy mode.
 
static bool service_debug_requests (GraphvizDumpOptions const &options) noexcept
 No-op request service hook in dummy mode.
 
static void set_coroutine_exception_diagnostics_options (CoroutineExceptionDiagnosticsOptions const &options) noexcept
 Ignores automatic exception-diagnostics policy in dummy mode.
 
static void set_stacktrace_options (StacktraceOptions const &options) noexcept
 Ignores stacktrace formatting options in dummy mode.
 
static GraphSnapshot snapshot ()
 Returns an empty structured graph snapshot in dummy mode.
 
static GraphSnapshot snapshot_best_effort ()
 Returns an empty best-effort structured graph snapshot in dummy mode.
 
static StacktraceOptions stacktrace_options ()
 Returns stacktrace formatting options in dummy mode.
 
static bool start_diagnostics_service () noexcept
 No-op diagnostics service start hook in dummy mode.
 
static bool start_diagnostics_service (DiagnosticsServiceOptions const &options) noexcept
 No-op diagnostics service start hook in dummy mode.
 
static constexpr void stop_diagnostics_service () noexcept
 No-op diagnostics service stop hook in dummy mode.
 
static constexpr void unbind_epoch_task (async::EpochContext const *epoch_context, std::coroutine_handle<> h, EpochTaskRole role) noexcept
 No-op epoch-task unbinding hook.
 

Detailed Description

No-op task registry implementation for non-debug async builds.

Member Typedef Documentation

◆ GraphDiagnostics

Structured async DAG diagnostic result type mirrored from the debug registry.

◆ GraphSnapshot

Structured async DAG snapshot type mirrored from the debug registry.

◆ StacktraceOptions

Runtime controls for stacktrace formatting mirrored from the debug registry.

Member Enumeration Documentation

◆ DumpMode

enum class uni20::TaskRegistry::DumpMode
strong

Verbosity levels mirrored from the debug registry interface.

Enumerator
None 
Basic 
Full 

◆ EpochTaskRole

Reader/writer role mirrored from the debug registry interface.

Enumerator
Reader 
Writer 

◆ TaskState

enum class uni20::TaskRegistry::TaskState
strong

Lifecycle states mirrored from the debug registry interface.

Enumerator
Constructed 
Running 
Suspended 
Failed 
Leaked 

Member Function Documentation

◆ bind_epoch_task()

void uni20::TaskRegistry::bind_epoch_task ( async::EpochContext const *  epoch_context,
std::coroutine_handle<>  h,
EpochTaskRole  role 
)
inlinestaticconstexprnoexcept

No-op epoch-task binding hook.

Parameters
epoch_contextEpoch context pointer ignored in dummy mode.
hCoroutine handle ignored in dummy mode.
roleRole value ignored in dummy mode.

◆ coroutine_exception_diagnostics_options()

TaskRegistry::CoroutineExceptionDiagnosticsOptions uni20::TaskRegistry::coroutine_exception_diagnostics_options ( )
inlinestatic

Returns a disabled automatic exception-diagnostics policy in dummy mode.

◆ default_coroutine_exception_diagnostics_options()

TaskRegistry::CoroutineExceptionDiagnosticsOptions uni20::TaskRegistry::default_coroutine_exception_diagnostics_options ( )
inlinestatic

Returns a disabled automatic exception-diagnostics policy in dummy mode.

◆ default_diagnostics_service_options()

TaskRegistry::DiagnosticsServiceOptions uni20::TaskRegistry::default_diagnostics_service_options ( )
inlinestatic

Builds default diagnostics-service options in dummy mode.

Returns
Default diagnostics-service options.

◆ default_graphviz_dump_options()

TaskRegistry::GraphvizDumpOptions uni20::TaskRegistry::default_graphviz_dump_options ( )
inlinestatic

Builds default file-output options in dummy mode.

Returns
Default Graphviz dump options.

◆ default_graphviz_dump_path() [1/2]

std::string uni20::TaskRegistry::default_graphviz_dump_path ( )
inlinestatic

Builds a dummy default Graphviz dump path.

Returns
Path using the default directory and prefix.

◆ default_graphviz_dump_path() [2/2]

std::string uni20::TaskRegistry::default_graphviz_dump_path ( GraphvizDumpOptions const &  options)
inlinestatic

Builds a dummy default Graphviz dump path.

Parameters
optionsFile-output options.
Returns
Path using the configured directory and prefix.

◆ default_stacktrace_options()

TaskRegistry::StacktraceOptions uni20::TaskRegistry::default_stacktrace_options ( )
inlinestatic

Builds default stacktrace formatting options in dummy mode.

Returns
Default stacktrace formatting options.

◆ destroy_epoch_context()

void uni20::TaskRegistry::destroy_epoch_context ( async::EpochContext const *  epoch_context)
inlinestaticconstexprnoexcept

No-op epoch-context destruction hook.

Parameters
epoch_contextEpoch context pointer ignored in dummy mode.

◆ destroy_task()

void uni20::TaskRegistry::destroy_task ( std::coroutine_handle<>  h)
inlinestaticconstexprnoexcept

No-op task destruction hook.

Parameters
hCoroutine handle ignored in dummy mode.

◆ diagnose_snapshot()

TaskRegistry::GraphDiagnostics uni20::TaskRegistry::diagnose_snapshot ( GraphSnapshot const &  snapshot)
inlinestatic

Returns empty diagnostics for a graph snapshot in dummy mode.

Parameters
snapshotGraph snapshot ignored in dummy mode.
Returns
Empty diagnostics.

◆ dump()

void uni20::TaskRegistry::dump ( )
inlinestaticconstexprnoexcept

No-op global dump hook.

◆ dump_epoch_context()

void uni20::TaskRegistry::dump_epoch_context ( async::EpochContext const *  epoch_context,
char const *  reason = nullptr 
)
inlinestaticconstexprnoexcept

No-op epoch-context dump hook.

Parameters
epoch_contextEpoch context pointer ignored in dummy mode.
reasonOptional reason string ignored in dummy mode.

◆ dump_graphviz()

void uni20::TaskRegistry::dump_graphviz ( std::FILE *  stream = stderr)
inlinestatic

Prints an empty Graphviz DOT document in dummy mode.

Parameters
streamDestination stream.

◆ dump_graphviz_file()

bool uni20::TaskRegistry::dump_graphviz_file ( std::string const &  path)
inlinestatic

Writes an empty Graphviz DOT document in dummy mode.

Parameters
pathDestination path.
Returns
true if the file was written successfully.

◆ dump_graphviz_file_best_effort()

bool uni20::TaskRegistry::dump_graphviz_file_best_effort ( std::string const &  path)
inlinestatic

Writes an empty best-effort Graphviz DOT document in dummy mode.

Parameters
pathDestination path.
Returns
true if the file was written successfully.

◆ dump_mode()

TaskRegistry::DumpMode uni20::TaskRegistry::dump_mode ( )
inlinestaticconstexprnoexcept

Returns DumpMode::None in dummy mode.

Returns
Always DumpMode::None.

◆ epoch_reader_tasks()

std::vector< std::coroutine_handle<> > uni20::TaskRegistry::epoch_reader_tasks ( async::EpochContext const *  epoch_context)
inlinestatic

Returns an empty reader list in dummy mode.

Parameters
epoch_contextEpoch context pointer ignored in dummy mode.
Returns
Empty vector.

◆ epoch_writer_tasks()

std::vector< std::coroutine_handle<> > uni20::TaskRegistry::epoch_writer_tasks ( async::EpochContext const *  epoch_context)
inlinestatic

Returns an empty writer list in dummy mode.

Parameters
epoch_contextEpoch context pointer ignored in dummy mode.
Returns
Empty vector.

◆ graphviz_dot() [1/3]

std::string uni20::TaskRegistry::graphviz_dot ( )
inlinestatic

Returns an empty Graphviz DOT document in dummy mode.

Returns
Empty async DAG graph.

◆ graphviz_dot() [2/3]

std::string uni20::TaskRegistry::graphviz_dot ( GraphSnapshot const &  snapshot)
inlinestatic

Renders a graph snapshot as Graphviz DOT in dummy mode.

Parameters
snapshotGraph snapshot ignored in dummy mode.
Returns
Empty async DAG graph.

◆ graphviz_dot() [3/3]

std::string uni20::TaskRegistry::graphviz_dot ( GraphSnapshot const &  snapshot,
GraphDiagnostics const &  diagnostics 
)
inlinestatic

Renders a graph snapshot and diagnostics as Graphviz DOT in dummy mode.

Parameters
snapshotGraph snapshot ignored in dummy mode.
diagnosticsDiagnostics ignored in dummy mode.
Returns
Empty async DAG graph.

◆ graphviz_dot_best_effort()

std::string uni20::TaskRegistry::graphviz_dot_best_effort ( )
inlinestatic

Returns an empty best-effort Graphviz DOT document in dummy mode.

Returns
Empty async DAG graph.

◆ leak_task()

void uni20::TaskRegistry::leak_task ( std::coroutine_handle<>  h)
inlinestaticconstexprnoexcept

No-op task leak hook.

Parameters
hCoroutine handle ignored in dummy mode.

◆ mark_running()

void uni20::TaskRegistry::mark_running ( std::coroutine_handle<>  h)
inlinestaticconstexprnoexcept

No-op running-state hook.

Parameters
hCoroutine handle ignored in dummy mode.

◆ mark_suspended()

void uni20::TaskRegistry::mark_suspended ( std::coroutine_handle<>  h)
inlinestaticconstexprnoexcept

No-op suspended-state hook.

Parameters
hCoroutine handle ignored in dummy mode.

◆ name_async_value()

void uni20::TaskRegistry::name_async_value ( async::NodeInfo const *  node,
std::string const &  label 
)
inlinestaticnoexcept

No-op async value label hook.

Parameters
nodeAsync value node ignored in dummy mode.
labelLabel ignored in dummy mode.

◆ name_task()

void uni20::TaskRegistry::name_task ( std::coroutine_handle<>  h,
std::string const &  label 
)
inlinestaticnoexcept

No-op task label hook.

Parameters
hCoroutine handle ignored in dummy mode.
labelLabel ignored in dummy mode.

◆ record_await_dependency()

void uni20::TaskRegistry::record_await_dependency ( std::coroutine_handle<>  h,
async::NodeInfo const *  node,
EpochTaskRole  role 
)
inlinestaticconstexprnoexcept

No-op concrete await DAG dependency hook.

Parameters
hCoroutine handle ignored in dummy mode.
nodeDependency node ignored in dummy mode.
roleDependency role ignored in dummy mode.

◆ record_task_dependencies()

void uni20::TaskRegistry::record_task_dependencies ( std::coroutine_handle<>  h,
std::vector< async::NodeInfo const * > const &  read_dependencies,
std::vector< async::NodeInfo const * > const &  write_dependencies 
)
inlinestaticconstexprnoexcept

No-op coarse DAG dependency hook.

Parameters
hCoroutine handle ignored in dummy mode.
read_dependenciesRead dependency nodes ignored in dummy mode.
write_dependenciesWrite dependency nodes ignored in dummy mode.

◆ record_task_scheduled()

void uni20::TaskRegistry::record_task_scheduled ( std::coroutine_handle<>  h)
inlinestaticconstexprnoexcept

No-op scheduler submission provenance hook.

Parameters
hCoroutine handle ignored in dummy mode.

◆ record_unhandled_exception()

void uni20::TaskRegistry::record_unhandled_exception ( std::coroutine_handle<>  h,
std::exception_ptr  exception,
bool  originating_failure 
)
inlinestaticconstexprnoexcept

No-op unhandled-exception hook.

◆ register_epoch_context()

void uni20::TaskRegistry::register_epoch_context ( async::EpochContext const *  epoch_context)
inlinestaticconstexprnoexcept

No-op epoch-context registration hook.

Parameters
epoch_contextEpoch context pointer ignored in dummy mode.

◆ register_task()

void uni20::TaskRegistry::register_task ( std::coroutine_handle<>  h)
inlinestaticconstexprnoexcept

No-op task registration hook.

Parameters
hCoroutine handle ignored in dummy mode.

◆ request_graphviz_dump()

void uni20::TaskRegistry::request_graphviz_dump ( )
inlinestaticconstexprnoexcept

No-op dump request hook in dummy mode.

◆ reset_coroutine_exception_diagnostics_options()

void uni20::TaskRegistry::reset_coroutine_exception_diagnostics_options ( )
inlinestaticconstexprnoexcept

No-op automatic exception-diagnostics policy reset in dummy mode.

◆ reset_stacktrace_options()

void uni20::TaskRegistry::reset_stacktrace_options ( )
inlinestaticconstexprnoexcept

Resets stacktrace formatting options in dummy mode.

◆ service_debug_requests() [1/2]

bool uni20::TaskRegistry::service_debug_requests ( )
inlinestaticnoexcept

No-op request service hook in dummy mode.

Returns
Always false.

◆ service_debug_requests() [2/2]

bool uni20::TaskRegistry::service_debug_requests ( GraphvizDumpOptions const &  options)
inlinestaticnoexcept

No-op request service hook in dummy mode.

Parameters
optionsFile-output options ignored in dummy mode.
Returns
Always false.

◆ set_coroutine_exception_diagnostics_options()

void uni20::TaskRegistry::set_coroutine_exception_diagnostics_options ( CoroutineExceptionDiagnosticsOptions const &  options)
inlinestaticnoexcept

Ignores automatic exception-diagnostics policy in dummy mode.

◆ set_stacktrace_options()

void uni20::TaskRegistry::set_stacktrace_options ( StacktraceOptions const &  options)
inlinestaticnoexcept

Ignores stacktrace formatting options in dummy mode.

Parameters
optionsStacktrace options ignored in dummy mode.

◆ snapshot()

TaskRegistry::GraphSnapshot uni20::TaskRegistry::snapshot ( )
inlinestatic

Returns an empty structured graph snapshot in dummy mode.

Returns
Empty graph snapshot.

◆ snapshot_best_effort()

TaskRegistry::GraphSnapshot uni20::TaskRegistry::snapshot_best_effort ( )
inlinestatic

Returns an empty best-effort structured graph snapshot in dummy mode.

Returns
Empty graph snapshot.

◆ stacktrace_options()

TaskRegistry::StacktraceOptions uni20::TaskRegistry::stacktrace_options ( )
inlinestatic

Returns stacktrace formatting options in dummy mode.

Returns
Default stacktrace formatting options.

◆ start_diagnostics_service() [1/2]

bool uni20::TaskRegistry::start_diagnostics_service ( )
inlinestaticnoexcept

No-op diagnostics service start hook in dummy mode.

Returns
Always false.

◆ start_diagnostics_service() [2/2]

bool uni20::TaskRegistry::start_diagnostics_service ( DiagnosticsServiceOptions const &  options)
inlinestaticnoexcept

No-op diagnostics service start hook in dummy mode.

Parameters
optionsService options ignored in dummy mode.
Returns
Always false.

◆ stop_diagnostics_service()

void uni20::TaskRegistry::stop_diagnostics_service ( )
inlinestaticconstexprnoexcept

No-op diagnostics service stop hook in dummy mode.

◆ unbind_epoch_task()

void uni20::TaskRegistry::unbind_epoch_task ( async::EpochContext const *  epoch_context,
std::coroutine_handle<>  h,
EpochTaskRole  role 
)
inlinestaticconstexprnoexcept

No-op epoch-task unbinding hook.

Parameters
epoch_contextEpoch context pointer ignored in dummy mode.
hCoroutine handle ignored in dummy mode.
roleRole value ignored in dummy mode.

The documentation for this class was generated from the following files: