class Cucumber::Core::Gherkin::AstBuilder::ExamplesTableBuilder

Attributes

example_rows_builders[R]
header_builder[R]

Public Class Methods

new(*) click to toggle source
# File lib/cucumber/core/gherkin/ast_builder.rb, line 293
def initialize(*)
  super
  @header_builder = HeaderBuilder.new(file, attributes[:table_header])
  @example_rows_builders = attributes[:table_body].map do |row_attributes|
    ExampleRowBuilder.new(file, row_attributes)
  end
end

Public Instance Methods

result(language) click to toggle source
# File lib/cucumber/core/gherkin/ast_builder.rb, line 301
def result(language)
  Ast::Examples.new(
    location,
    comments,
    tags,
    keyword,
    name,
    description,
    header,
    example_rows(language)
  )
end

Private Instance Methods

children() click to toggle source
# File lib/cucumber/core/gherkin/ast_builder.rb, line 331
def children
  [header_builder] + example_rows_builders
end
example_rows(language) click to toggle source
# File lib/cucumber/core/gherkin/ast_builder.rb, line 320
def example_rows(language)
  example_rows_builders.each.with_index.map { |builder, index| builder.result(language, header, index) }
end
header() click to toggle source
# File lib/cucumber/core/gherkin/ast_builder.rb, line 316
def header
  @header = header_builder.result
end