Mutare.MutationSite (mutare v0.1.0)

Copy Markdown View Source

Stable public description of one generated mutant.

Mutare.Site is Mutare's internal runner/report record. This struct is the public API shape returned from Mutare.transform_string/2: it keeps the fields useful to custom mutator and extension authors while leaving delivery, runner, and reporter internals free to change.

Summary

Types

position()

@type position() :: %{line: pos_integer(), column: pos_integer()}

range()

@type range() :: %{start: position(), end: position()} | nil

t()

@type t() :: %Mutare.MutationSite{
  column: pos_integer() | nil,
  emitted: boolean(),
  file: String.t(),
  id: pos_integer(),
  ignore_reason: String.t() | nil,
  ignored: boolean(),
  line: pos_integer() | nil,
  mutated_code: String.t() | nil,
  mutator: atom(),
  note: String.t() | nil,
  operation: :replace | :delete,
  original_code: String.t() | nil,
  range: range(),
  variant: [String.t()]
}