class Cucumber::Formatter::AstLookup::TestStepLookupBuilder

def initialize(gherkin_document)

def initialize(gherkin_document)
  @lookup_hash = {}
  process_scenario_container(gherkin_document.feature)
end

def process_scenario_container(container)

def process_scenario_container(container)
  container.children.each do |child|
    if child.respond_to?(:rule) && child.rule
      process_scenario_container(child.rule)
    elsif child.respond_to?(:scenario) && child.scenario
      store_scenario_source_steps(child.scenario)
    elsif !child.background.nil?
      store_background_source_steps(child.background)
    end
  end
end

def store_background_source_steps(background)

def store_background_source_steps(background)
  background.steps.each do |step|
    @lookup_hash[step.location.line] = StepSource.new(:Step, step)
  end
end

def store_scenario_source_steps(scenario)

def store_scenario_source_steps(scenario)
  scenario.steps.each do |step|
    @lookup_hash[step.location.line] = StepSource.new(:Step, step)
  end
end