class Cucumber::Core::Gherkin::Parser
Constants
- PARSER_ERRORS
Attributes
receiver[R]
Public Class Methods
new(receiver)
click to toggle source
# File lib/cucumber/core/gherkin/parser.rb, line 16 def initialize(receiver) @receiver = receiver end
Public Instance Methods
document(document)
click to toggle source
# File lib/cucumber/core/gherkin/parser.rb, line 20 def document(document) parser = ::Gherkin3::Parser.new scanner = ::Gherkin3::TokenScanner.new(document.body) core_builder = AstBuilder.new(document.uri) if document.body.strip.empty? return receiver.feature Ast::NullFeature.new end begin result = parser.parse(scanner) receiver.feature core_builder.feature(result) rescue *PARSER_ERRORS => e raise Core::Gherkin::ParseError.new("#{document.uri}: #{e.message}") end end
done()
click to toggle source
# File lib/cucumber/core/gherkin/parser.rb, line 38 def done receiver.done self end