class Cucumber::Parser::GherkinBuilder::FeatureBuilder

Public Instance Methods

add_child(child) click to toggle source
# File lib/cucumber/parser/gherkin_builder.rb, line 151
def add_child(child)
  children << child
end
background_builder=(builder) click to toggle source
# File lib/cucumber/parser/gherkin_builder.rb, line 147
def background_builder=(builder)
  @background_builder = builder
end
children() click to toggle source
# File lib/cucumber/parser/gherkin_builder.rb, line 155
def children
  @children ||= []
end
result(language) click to toggle source
# File lib/cucumber/parser/gherkin_builder.rb, line 130
def result(language)
  background = background(language)
  feature = Ast::Feature.new(
    location,
    background,
    comment,
    tags,
    node.keyword,
    node.name.lstrip,
    node.description.rstrip,
    children.map { |builder| builder.result(background, language, tags) }
  )
  feature.gherkin_statement(node)
  feature.language = language
  feature
end

Private Instance Methods

background(language) click to toggle source
# File lib/cucumber/parser/gherkin_builder.rb, line 161
def background(language)
  return Ast::EmptyBackground.new unless @background_builder
  @background ||= @background_builder.result(language)
end