Sha256: 964705fbc1e35689ad5e425ae048bad6a45ef62c0f6fda09fa76cb45bd6f9635

Contents?: true

Size: 606 Bytes

Versions: 39

Compression:

Stored size: 606 Bytes

Contents

# frozen_string_literal: true

module Reek
  module AST
    module SexpExtensions
      # Utility methods for :block nodes.
      module BlockNode
        def call
          children.first
        end

        def args
          children[1]
        end

        def block
          children[2]
        end

        def parameters
          children[1] || []
        end

        def parameter_names
          parameters.children
        end

        def simple_name
          :block
        end

        def without_block_arguments?
          args.components.empty?
        end
      end
    end
  end
end

Version data entries

39 entries across 37 versions & 2 rubygems

Version Path
reek-6.4.0 lib/reek/ast/sexp_extensions/block.rb
reek-6.3.0 lib/reek/ast/sexp_extensions/block.rb
reek-6.2.0 lib/reek/ast/sexp_extensions/block.rb
reek-6.1.4 lib/reek/ast/sexp_extensions/block.rb
reek-6.1.3 lib/reek/ast/sexp_extensions/block.rb
reek-6.1.2 lib/reek/ast/sexp_extensions/block.rb
reek-6.1.1 lib/reek/ast/sexp_extensions/block.rb
reek-6.1.0 lib/reek/ast/sexp_extensions/block.rb
reek-6.0.6 lib/reek/ast/sexp_extensions/block.rb
reek-6.0.5 lib/reek/ast/sexp_extensions/block.rb
reek-6.0.4 lib/reek/ast/sexp_extensions/block.rb
reek-6.0.3 lib/reek/ast/sexp_extensions/block.rb
reek-6.0.2 lib/reek/ast/sexp_extensions/block.rb
reek-6.0.1 lib/reek/ast/sexp_extensions/block.rb
reek-6.0.0 lib/reek/ast/sexp_extensions/block.rb
reek-5.6.0 lib/reek/ast/sexp_extensions/block.rb
reek-5.5.0 lib/reek/ast/sexp_extensions/block.rb
reek-5.4.1 lib/reek/ast/sexp_extensions/block.rb
reek-5.4.0 lib/reek/ast/sexp_extensions/block.rb
reek-5.3.2 lib/reek/ast/sexp_extensions/block.rb