Sha256: ed0e3e451f827b9789a0ad6d84f34fe01109cb5ea011c9e82b902d48479df19a

Contents?: true

Size: 723 Bytes

Versions: 5

Compression:

Stored size: 723 Bytes

Contents

# typed: true
require 'ddtrace/contrib/patcher'

module Datadog
  module Contrib
    module ConcurrentRuby
      # Patcher enables patching of 'Future' class.
      module Patcher
        include Kernel # Ensure that kernel methods are always available (https://sorbet.org/docs/error-reference#7003)
        include Contrib::Patcher

        module_function

        def target_version
          Integration.version
        end

        def patch
          require 'ddtrace/contrib/concurrent_ruby/future_patch'
          patch_future
        end

        # Propagate tracing context in Concurrent::Future
        def patch_future
          ::Concurrent::Future.include(FuturePatch)
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
ddtrace-0.54.2 lib/ddtrace/contrib/concurrent_ruby/patcher.rb
ddtrace-0.54.1 lib/ddtrace/contrib/concurrent_ruby/patcher.rb
ddtrace-0.54.0 lib/ddtrace/contrib/concurrent_ruby/patcher.rb
ddtrace-0.53.0 lib/ddtrace/contrib/concurrent_ruby/patcher.rb
ddtrace-0.52.0 lib/ddtrace/contrib/concurrent_ruby/patcher.rb