Sha256: bb760e0ca70aabd691c5646cf54d9ea965376f9d0417ed72d6769bc17575cf5f
Contents?: true
Size: 649 Bytes
Versions: 96
Compression:
Stored size: 649 Bytes
Contents
# frozen_string_literal: true module Mutant # Require highjack module RequireHighjack # Install require callback # # @param [Module] target # @param [#call] callback # # @return [#call] # the original implementation on singleton def self.call(target, callback) target.public_method(:require).tap do target.module_eval do undef_method(:require) define_method(:require, &callback) class << self undef_method(:require) end define_singleton_method(:require, &callback) end end end end # RequireHighjack end # Mutant
Version data entries
96 entries across 96 versions & 1 rubygems