module Kernel

def pry!(host: nil, port: 9876, state: false)

运行 pry! 会被拦截, 且只会被拦截一次.
def pry!(host: nil, port: 9876, state: false)
  # You can use environment variables SHOW_GLOBAL_VARIABLES,
  # HIDE_INSTANCE_VARIABLES and HIDE_LOCAL_VARIABLES
  # to customise the kind of variables shown.
  require_relative '../pry-state' if state
  return unless ENV['Pry_was_started'].nil?
  ENV['Pry_was_started'] = 'true'
  pry3(2, host: host, port: port)
  # 这里如果有代码, 将会让 pry! 进入这个方法, 因此保持为空.
end