Sha256: 4a80475a2ec0f51f12a9ab07a722bec29b3c8300728d2fe4d3782a4e6fbab244

Contents?: true

Size: 533 Bytes

Versions: 68

Compression:

Stored size: 533 Bytes

Contents

module ScoutApm
  module Utils
    module KlassHelper
      # KlassHelper.defined?("ActiveRecord", "Base") #=> true / false
      # KlassHelper.defined?("ActiveRecord::Base")   #=> true / false

      def self.defined?(*names)
        if names.length == 1
          names = names[0].split("::")
        end

        obj = Object

        names.each do |name|
          begin
            obj = obj.const_get(name)
          rescue NameError
            return false
          end
        end

        true
      end
    end
  end
end

Version data entries

68 entries across 68 versions & 1 rubygems

Version Path
scout_apm-2.3.5 lib/scout_apm/utils/klass_helper.rb
scout_apm-2.3.4 lib/scout_apm/utils/klass_helper.rb
scout_apm-2.3.3 lib/scout_apm/utils/klass_helper.rb
scout_apm-2.3.2 lib/scout_apm/utils/klass_helper.rb
scout_apm-3.0.0.pre13 lib/scout_apm/utils/klass_helper.rb
scout_apm-2.3.1 lib/scout_apm/utils/klass_helper.rb
scout_apm-3.0.0.pre12 lib/scout_apm/utils/klass_helper.rb
scout_apm-2.3.0 lib/scout_apm/utils/klass_helper.rb
scout_apm-2.3.0.pre3 lib/scout_apm/utils/klass_helper.rb
scout_apm-2.3.0.pre2 lib/scout_apm/utils/klass_helper.rb
scout_apm-2.3.0.pre1 lib/scout_apm/utils/klass_helper.rb
scout_apm-3.0.0.pre11 lib/scout_apm/utils/klass_helper.rb
scout_apm-2.3.0.pre lib/scout_apm/utils/klass_helper.rb
scout_apm-2.1.32 lib/scout_apm/utils/klass_helper.rb
scout_apm-2.1.31 lib/scout_apm/utils/klass_helper.rb
scout_apm-2.1.30 lib/scout_apm/utils/klass_helper.rb
scout_apm-2.1.29 lib/scout_apm/utils/klass_helper.rb
scout_apm-2.1.28 lib/scout_apm/utils/klass_helper.rb
scout_apm-2.1.27 lib/scout_apm/utils/klass_helper.rb
scout_apm-2.1.26 lib/scout_apm/utils/klass_helper.rb