Sha256: 10902ee23c5a06448f8c11766375625384ec981892d213e86038e5112fbeead1

Contents?: true

Size: 518 Bytes

Versions: 1

Compression:

Stored size: 518 Bytes

Contents

# frozen_string_literal: true

module Zeitwerk::ConstAdded
  def const_added(cname)
    if loader = Zeitwerk::ExplicitNamespace.__loader_for(self, cname)
      namespace = const_get(cname, false)

      unless namespace.is_a?(Module)
        cref = Zeitwerk::Cref.new(self, cname)
        raise Zeitwerk::Error, "#{cref.path} is expected to be a namespace, should be a class or module (got #{namespace.class})"
      end

      loader.on_namespace_loaded(namespace)
    end
    super
  end

  Module.prepend(self)
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
zeitwerk-2.7.1 lib/zeitwerk/core_ext/module.rb