Sha256: d5b5da59c1a86baf8726aea84d79e78035aab55742ca44d6318a160e4c6d1891

Contents?: true

Size: 569 Bytes

Versions: 24

Compression:

Stored size: 569 Bytes

Contents

# encoding: utf-8

module RuboCop
  module Cop
    # Common code for ordinary arrays with [] that can be written with %
    # syntax.
    module ArraySyntax
      def array_of?(element_type, node)
        return false unless square_brackets?(node)

        array_elems = node.children

        # no need to check empty arrays
        return false unless array_elems && array_elems.size > 1

        array_elems.all? { |e| e.type == element_type }
      end

      def square_brackets?(node)
        node.loc.begin && node.loc.begin.is?('[')
      end
    end
  end
end

Version data entries

24 entries across 24 versions & 2 rubygems

Version Path
rubyjobbuilderdsl-0.0.2 vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/array_syntax.rb
rubyjobbuilderdsl-0.0.1 vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.35.1 lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.35.0 lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.34.2 lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.34.1 lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.34.0 lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.33.0 lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.32.1 lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.32.0 lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.31.0 lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.30.1 lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.30.0 lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.29.1 lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.29.0 lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.28.0 lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.27.1 lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.27.0 lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.26.1 lib/rubocop/cop/mixin/array_syntax.rb
rubocop-0.26.0 lib/rubocop/cop/mixin/array_syntax.rb