# frozen_string_literal: true module ActionView #:nodoc: class Template #:nodoc: class Inline < Template #:nodoc: # This finalizer is needed (and exactly with a proc inside another proc) # otherwise templates leak in development. Finalizer = proc do |method_name, mod| # :nodoc: proc do mod.module_eval do remove_possible_method method_name end end end def compile(mod) super ObjectSpace.define_finalizer(self, Finalizer[method_name, mod]) end end end end