class Gherkin::TagExpression

Attributes

limits[R]

Public Class Methods

new(tag_expressions) click to toggle source
# File lib/gherkin/tag_expression.rb, line 9
def initialize(tag_expressions)
  @ands = []
  @limits = {}
  tag_expressions.each do |expr|
    add(expr.strip.split(%r\s*,\s*/))
  end
end

Public Instance Methods

empty?() click to toggle source
# File lib/gherkin/tag_expression.rb, line 17
def empty?
  @ands.empty?
end
eval(tags) click to toggle source
# File lib/gherkin/tag_expression.rb, line 21
def eval(tags)
  return true if @ands.flatten.empty?
  vars = Hash[*tags.map{|tag| [tag.name, true]}.flatten]
  !!Kernel.eval(ruby_expression)
end