Sha256: 25b1d751da66a5410431a1b498d885a32415b6d704cefa60677d1b09c5d7e610

Contents?: true

Size: 575 Bytes

Versions: 12

Compression:

Stored size: 575 Bytes

Contents

require 'roodi/checks/name_check'

module Roodi
  module Checks
    # Checks a class name to make sure it matches the specified pattern.
    # 
    # Keeping to a consistent naming convention makes your code easier to read.
    class ClassNameCheck < NameCheck
      DEFAULT_PATTERN = /^[A-Z][a-zA-Z0-9]*$/
      
      def initialize(options = {})
        pattern = options['pattern'] || DEFAULT_PATTERN
        super([:class], pattern, 'Class')
      end
      
      def find_name(node)
        node[1].class == Symbol ? node[1] : node[1].last
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 3 rubygems

Version Path
threedaymonk-roodi-1.3.8 lib/roodi/checks/class_name_check.rb
roodi1.9-2.0.1 lib/roodi/checks/class_name_check.rb
roodi-2.1.0 lib/roodi/checks/class_name_check.rb
roodi-2.0.1 lib/roodi/checks/class_name_check.rb
roodi-2.0.0 lib/roodi/checks/class_name_check.rb
roodi-1.3.6 lib/roodi/checks/class_name_check.rb
roodi-1.4.0 lib/roodi/checks/class_name_check.rb
roodi-1.3.4 lib/roodi/checks/class_name_check.rb
roodi-1.3.5 lib/roodi/checks/class_name_check.rb
roodi-1.3.3 lib/roodi/checks/class_name_check.rb
roodi-1.3.7 lib/roodi/checks/class_name_check.rb
roodi-1.3.2 lib/roodi/checks/class_name_check.rb