Sha256: 360b3c72ae6b72a7875dc281a07af83fe34bf1364f0be3d0d948aae01561d1e6

Contents?: true

Size: 704 Bytes

Versions: 19

Compression:

Stored size: 704 Bytes

Contents

module Cucumber
  module Ast
    # Holds the names of tags parsed from a feature file:
    #
    #   @invoice @release_2
    #
    # This gets stored internally as <tt>["invoice", "release_2"]</tt>
    #
    class Tags
      def initialize(line, tag_names)
        @line, @tag_names = line, tag_names
      end

      def among?(tag_names)
        (@tag_names & tag_names).any?
      end

      def at_lines?(lines)
        lines.empty? || lines.index(@line)
      end

      def accept(visitor)
        @tag_names.each do |tag_name|
          visitor.visit_tag_name(tag_name)
        end
      end
      
      def to_sexp
        @tag_names.map{|tag_name| [:tag, tag_name]}
      end
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
aslakhellesoy-cucumber-0.1.16.5 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.1 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.10 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.11 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.12 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.13 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.14 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.15 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.17 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.18 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.19 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.2 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.20 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.3 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.5 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.6 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.7 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.8 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.99.9 lib/cucumber/ast/tags.rb