Class: Cucumber::Core::Ast::Step
- Inherits:
-
Object
- Object
- Cucumber::Core::Ast::Step
- Includes:
- DescribesItself, HasLocation
- Defined in:
- lib/cucumber/core/ast/step.rb
Direct Known Subclasses
Instance Attribute Summary collapse
-
#comments ⇒ Object
readonly
Returns the value of attribute comments.
-
#exception ⇒ Object
readonly
Returns the value of attribute exception.
-
#keyword ⇒ Object
readonly
Returns the value of attribute keyword.
-
#language ⇒ Object
readonly
Returns the value of attribute language.
-
#multiline_arg ⇒ Object
readonly
Returns the value of attribute multiline_arg.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
Instance Method Summary collapse
- #actual_keyword(previous_step_keyword = nil) ⇒ Object
- #backtrace_line ⇒ Object
-
#initialize(language, location, comments, keyword, name, multiline_arg) ⇒ Step
constructor
A new instance of Step.
- #inspect ⇒ Object
- #to_sexp ⇒ Object
Methods included from DescribesItself
Methods included from HasLocation
#all_locations, #attributes, #file, #file_colon_line, #line, #location, #tags
Constructor Details
#initialize(language, location, comments, keyword, name, multiline_arg) ⇒ Step
Returns a new instance of Step.
14 15 16 |
# File 'lib/cucumber/core/ast/step.rb', line 14 def initialize(language, location, comments, keyword, name, multiline_arg) @language, @location, @comments, @keyword, @name, @multiline_arg = language, location, comments, keyword, name, multiline_arg end |
Instance Attribute Details
#comments ⇒ Object (readonly)
Returns the value of attribute comments.
12 13 14 |
# File 'lib/cucumber/core/ast/step.rb', line 12 def comments @comments end |
#exception ⇒ Object (readonly)
Returns the value of attribute exception.
12 13 14 |
# File 'lib/cucumber/core/ast/step.rb', line 12 def exception @exception end |
#keyword ⇒ Object (readonly)
Returns the value of attribute keyword.
12 13 14 |
# File 'lib/cucumber/core/ast/step.rb', line 12 def keyword @keyword end |
#language ⇒ Object (readonly)
Returns the value of attribute language.
12 13 14 |
# File 'lib/cucumber/core/ast/step.rb', line 12 def language @language end |
#multiline_arg ⇒ Object (readonly)
Returns the value of attribute multiline_arg.
12 13 14 |
# File 'lib/cucumber/core/ast/step.rb', line 12 def multiline_arg @multiline_arg end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
12 13 14 |
# File 'lib/cucumber/core/ast/step.rb', line 12 def name @name end |
Instance Method Details
#actual_keyword(previous_step_keyword = nil) ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/cucumber/core/ast/step.rb', line 26 def actual_keyword(previous_step_keyword = nil) if [language.and_keywords, language.but_keywords].flatten.uniq.include? keyword if previous_step_keyword.nil? language.given_keywords.reject{|kw| kw == '* '}[0] else previous_step_keyword end else keyword end end |
#backtrace_line ⇒ Object
22 23 24 |
# File 'lib/cucumber/core/ast/step.rb', line 22 def backtrace_line "#{location}:in `#{keyword}#{name}'" end |
#inspect ⇒ Object
38 39 40 41 |
# File 'lib/cucumber/core/ast/step.rb', line 38 def inspect keyword_and_name = [keyword, name].join(": ") %{#<#{self.class} "#{keyword_and_name}" (#{location})>} end |
#to_sexp ⇒ Object
18 19 20 |
# File 'lib/cucumber/core/ast/step.rb', line 18 def to_sexp [:step, line, keyword, name, @multiline_arg.to_sexp] end |