Sha256: 3696e40dfca1483e46c8de83bdbf056f61d5e82eb59cc2e0fa15c2cfbec40c94

Contents?: true

Size: 986 Bytes

Versions: 17

Compression:

Stored size: 986 Bytes

Contents

module Mutant
  class CLI
    class Classifier

      # Namespace classifier
      class Namespace < self

      private

        # Return matcher
        #
        # @return [Matcher]
        #
        # @api private
        #
        def matcher
          self.class::MATCHER.new(cache, namespace)
        end

        # Return namespace
        #
        # @return [Class, Module]
        #
        # @api private
        #
        def namespace
          Classifier.constant_lookup(match[1].to_s)
        end

        # Recursive namespace classifier
        class Recursive < self
          REGEXP = %r(\A(#{SCOPE_PATTERN})\*\z).freeze
          MATCHER = Matcher::Namespace
          register
        end # Recursive

        # Recursive namespace classifier
        class Flat < self
          REGEXP = %r(\A(#{SCOPE_PATTERN})\z).freeze
          MATCHER = Matcher::Scope
          register
        end # Flat

      end # Namespace
    end # Classifier
  end # CLI
end # Mutant

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
mutant-0.3.0.beta21 lib/mutant/cli/classifier/namespace.rb
mutant-0.3.0.beta20 lib/mutant/cli/classifier/namespace.rb
mutant-0.3.0.beta19 lib/mutant/cli/classifier/namespace.rb
mutant-0.3.0.beta18 lib/mutant/cli/classifier/namespace.rb
mutant-0.3.0.beta17 lib/mutant/cli/classifier/namespace.rb
mutant-0.3.0.beta16 lib/mutant/cli/classifier/namespace.rb
mutant-0.3.0.beta15 lib/mutant/cli/classifier/namespace.rb
mutant-0.3.0.beta14 lib/mutant/cli/classifier/namespace.rb
mutant-0.3.0.beta13 lib/mutant/cli/classifier/namespace.rb
mutant-0.3.0.beta12 lib/mutant/cli/classifier/namespace.rb
mutant-0.3.0.beta11 lib/mutant/cli/classifier/namespace.rb
mutant-0.3.0.beta10 lib/mutant/cli/classifier/namespace.rb
mutant-0.3.0.beta9 lib/mutant/cli/classifier/namespace.rb
mutant-0.3.0.beta8 lib/mutant/cli/classifier/namespace.rb
mutant-0.3.0.beta7 lib/mutant/cli/classifier/namespace.rb
mutant-0.3.0.beta6 lib/mutant/cli/classifier/namespace.rb
mutant-0.3.0.beta5 lib/mutant/cli/classifier/namespace.rb