Sha256: 47627157a4c82f4479114365d993fa23197676f1cc7032aac4f94e7e29502bcd
Contents?: true
Size: 1.2 KB
Versions: 5
Compression:
Stored size: 1.2 KB
Contents
# frozen_string_literal: true require "delegate" require "pakyow/support/hookable" module Pakyow class App class Connection < SimpleDelegator attr_reader :app include Support::Hookable events :initialize, :dup require "pakyow/app/connection/behavior/session" require "pakyow/app/connection/behavior/verifier" require "pakyow/app/connection/behavior/values" include Behavior::Session include Behavior::Verifier include Behavior::Values def initialize(app, connection) performing :initialize do @app = app; __setobj__(connection) end end def initialize_dup(_) performing :dup do super end end def method __getobj__.method end # Fixes an issue using pp inside a delegator. # def pp(*args) Kernel.pp(*args) end # @api private def self.from_connection(connection, **overrides) instance = allocate connection.instance_variables.each do |ivar| instance.instance_variable_set(ivar, overrides[ivar] || connection.instance_variable_get(ivar)) end instance end end end end
Version data entries
5 entries across 5 versions & 1 rubygems