Compiles controller specs into dependency graph data.
Summary
Types
@type compiled_graph() :: %{ controller_specs_by_name: %{ required(Solve.ControllerSpec.name()) => Solve.ControllerSpec.t() }, sorted_controller_names: [Solve.ControllerSpec.name()], dependents_map: %{ required(Solve.ControllerSpec.name()) => [Solve.ControllerSpec.name()] } }
Functions
@spec compile([Solve.ControllerSpec.t()]) :: {:ok, compiled_graph()} | {:error, term()}
@spec resolve_module!( module(), keyword() ) :: compiled_graph()