Sha256: 61311a9bf06688ad6bd9fc865216d88511b7beeab741e6f9d773633ffeee6100

Contents?: true

Size: 686 Bytes

Versions: 26

Compression:

Stored size: 686 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 has_tags?(tags)
        (@tag_names & tags).any?
      end

      def matches_lines?(lines)
        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

26 entries across 26 versions & 4 rubygems

Version Path
aslakhellesoy-cucumber-0.1.100.1 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.100.2 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.100.3 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.100.4 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.1.100.5 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.2.0.1 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.2.0.2 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.2.0.3 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.2.0.4 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.2.0 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.2.1 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.2.2.1 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.2.2.2 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.2.2 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.2.3.1 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.2.3.2 lib/cucumber/ast/tags.rb
aslakhellesoy-cucumber-0.2.3 lib/cucumber/ast/tags.rb
fcoury-cucumber-0.2.3.1 lib/cucumber/ast/tags.rb
kosmas58-cucumber-0.1.100.5 lib/cucumber/ast/tags.rb
kosmas58-cucumber-0.2.0.1 lib/cucumber/ast/tags.rb