Sha256: 4aaa1ea2d67a46111535fa3832dbc5613ef771850bc53fba36479248775514d7

Contents?: true

Size: 602 Bytes

Versions: 3

Compression:

Stored size: 602 Bytes

Contents

require 'brakeman/util'

module Brakeman
  class MethodInfo
    include Brakeman::Util

    attr_reader :name, :src, :owner, :file, :type

    def initialize name, src, owner, file
      @name = name
      @src = src
      @owner = owner
      @file = file
      @type = case src.node_type
              when :defn
                :instance
              when :defs
                :class
              else
                raise "Expected sexp type: #{src.node_type}"
              end
    end

    # To support legacy code that expected a Hash
    def [] attr
      self.send(attr)
    end
  end
end

Version data entries

3 entries across 3 versions & 3 rubygems

Version Path
brakeman-5.0.2 lib/brakeman/tracker/method_info.rb
brakeman-lib-5.0.2 lib/brakeman/tracker/method_info.rb
brakeman-min-5.0.2 lib/brakeman/tracker/method_info.rb