class ScoutApm::AutoInstrument::Cache

Public Class Methods

new() click to toggle source
# File lib/scout_apm/auto_instrument/parser.rb, line 8
def initialize
  @local_assignments = {}
end

Public Instance Methods

local_assignments?(node) click to toggle source
# File lib/scout_apm/auto_instrument/parser.rb, line 12
def local_assignments?(node)
  unless @local_assignments.key?(node)
    if node.type == :lvasgn
      @local_assignments[node] = true
    elsif node.children.find{|child| child.is_a?(Parser::AST::Node) && self.local_assignments?(child)}
      @local_assignments[node] = true
    else
      @local_assignments[node] = false
    end
  end
  
  return @local_assignments[node]
end