← All compilation units

Flyology.Supervision.Input_Children

Description

Convenience adapter that turns an application procedure into one structured Ada task generation with a typed immutable input. Applications that define their own task type use Supervision.Input_Task_Generations. Each call owns a fresh task object and joins it before returning.

Application_Context

type Application_Context (<>) is limited private;

Execute

procedure Execute
  (Context : in out Application_Context;
   Input   : Input_Type;
   Control : not null access Generation_Control)

Run one application generation with its family-owned input.

Parameters
Context

State kept alive by the enclosing supervisor scope

Input

Immutable typed input retained through task join

Control

Borrowed generation-local readiness and stop channel

Input_Type

type Input_Type is private;

Run

procedure Run
  (Context : aliased in out Application_Context;
   Input   : Input_Type;
   Control : aliased in out Generation_Control;
   Result  : out Generation_Result)

Create, activate, observe, and join one typed-input generation. Normal return, escaping exceptions, and abnormal completion are classified automatically from the task-owned terminal result.

Parameters
Context

Application state retained through the complete call

Input

Immutable generation input

Control

Fresh generation control opened by the supervisor

Result

Bounded outcome available after task join

Raised exceptions
Tasking_Error

Generation task activation failed

Task_CPU

Task_CPU : System.Multiprocessors.CPU_Range := System.Multiprocessors.Not_A_Specific_CPU;

Task_Model

Task_Model : Flyology.Execution_Model := Flyology.Project_Default;