Class: A11y::Lint::PhlexRunner

Inherits:
Object
  • Object
show all
Defined in:
lib/a11y/lint/phlex_runner.rb

Overview

Parses Phlex view classes and checks them against accessibility rules.

Constant Summary collapse

PHLEX_PATTERN =
/\bdef\s+view_template\b/

Instance Method Summary collapse

Constructor Details

#initialize(rules) ⇒ PhlexRunner

Returns a new instance of PhlexRunner.



12
13
14
# File 'lib/a11y/lint/phlex_runner.rb', line 12

def initialize(rules)
  @rules = rules
end

Instance Method Details

#run(source, filename:) ⇒ Object



16
17
18
19
20
21
22
23
24
25
# File 'lib/a11y/lint/phlex_runner.rb', line 16

def run(source, filename:)
  return [] unless source.match?(PHLEX_PATTERN)

  @source = source
  @filename = filename
  @offenses = []

  walk(Prism.parse(source).value)
  @offenses
end