Sha256: 7304967e9ce052430afb4fd65965a33cf4eae888f8cd257f28e09cd3495a8834

Contents?: true

Size: 773 Bytes

Versions: 8

Compression:

Stored size: 773 Bytes

Contents

module Reek
  module AST
    module SexpExtensions
      # Base module for utility methods for nodes representing variables.
      module VariableBase
        def name
          children.first
        end
      end

      # Utility methods for :cvar nodes.
      module CvarNode
        include VariableBase
      end

      # Utility methods for :ivar nodes.
      module IvarNode
        include VariableBase
      end

      # Utility methods for :ivasgn nodes.
      module IvasgnNode
        include VariableBase
      end

      # Utility methods for :lvar nodes.
      module LvarNode
        include VariableBase

        alias_method :var_name, :name
      end

      LvasgnNode = LvarNode
      CvasgnNode = CvarNode
      CvdeclNode = CvarNode
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
reek-3.8.3 lib/reek/ast/sexp_extensions/variables.rb
reek-3.8.2 lib/reek/ast/sexp_extensions/variables.rb
reek-3.8.1 lib/reek/ast/sexp_extensions/variables.rb
reek-3.8.0 lib/reek/ast/sexp_extensions/variables.rb
reek-3.7.1 lib/reek/ast/sexp_extensions/variables.rb
reek-3.7.0 lib/reek/ast/sexp_extensions/variables.rb
reek-3.6.1 lib/reek/ast/sexp_extensions/variables.rb
reek-3.6.0 lib/reek/ast/sexp_extensions/variables.rb