MetaCredo.Execution (MetaCredo v0.1.0)

View Source

Orchestrates the full analysis pipeline: source discovery, check execution, issue collection, and inline-disable filtering.

Summary

Functions

Runs the full analysis pipeline.

Runs checks on pre-parsed source files.

Types

report()

@type report() :: %{
  source_files: [MetaCredo.SourceFile.t()],
  issues: [MetaCredo.Issue.t()],
  checks_run: [module()],
  summary: map(),
  timing_ms: non_neg_integer() | nil
}

run_opts()

@type run_opts() :: [
  config: MetaCredo.Config.config() | nil,
  config_file: String.t() | nil,
  strict: boolean(),
  only: [atom()],
  ignore: [atom()],
  files_included: [String.t()] | nil,
  files_excluded: [term()] | nil
]

Functions

run(opts \\ [])

@spec run(run_opts()) :: report()

Runs the full analysis pipeline.

Options

  • :config - Pre-loaded config map (takes precedence over :config_file)
  • :config_file - Path to .metacredo.exs
  • :strict - Only report issues with priority >= :normal (default: false)
  • :only - Only run checks in these categories
  • :ignore - Skip checks in these categories
  • :files_included - Override file include patterns
  • :files_excluded - Override file exclude patterns

run_on_source_files(source_files, checks)

@spec run_on_source_files([MetaCredo.SourceFile.t()], [{module(), Keyword.t()}]) :: [
  MetaCredo.Issue.t()
]

Runs checks on pre-parsed source files.