PtcRunner.Kernel.CommandEntry (PtcRunner v0.14.0)

Copy Markdown View Source

Closed result of the frontend-owned command entry step.

Entry generates the command reference, parses exactly once, and validates an envelope destination against every derivable artifact target before startup. A syntactically valid invocation whose named project fails schema validation is retained as an admitted terminal diagnostic, so its envelope destination is available without bootstrapping the command or opening project references. One-shot result destinations are anchored into both parsed option views before their frontends receive them. A rejected entry retains no caller-owned destination or unknown switch text.

Summary

Types

t()

@type t() :: %PtcRunner.Kernel.CommandEntry{
  arguments: PtcRunner.Kernel.CommandArguments.t() | nil,
  destinations: {map(), [atom()]} | nil,
  diagnostic: PtcRunner.Kernel.CommandDiagnostic.t() | nil,
  envelope_path: binary() | nil,
  frontend: :standalone | :mix,
  rejection: PtcRunner.Kernel.CommandRejection.t() | nil,
  run_ref: binary()
}

Functions

open(argv, frontend)

@spec open([binary()], :standalone | :mix) :: {:ok, t()} | {:error, t()}