File: //usr/local/rvm/gems/ruby-2.5.9/doc/zeitwerk-2.5.1/ri/Kernel/require-i.ri
U:RDoc::AnyMethod[iI"require:ETI"Kernel#require;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I""@sig (String) -> true | false;T:
@fileI"lib/zeitwerk/kernel.rb;T:0@omit_headings_from_table_of_contents_below000[[I"zeitwerk_original_require;To;; [o;
; [I"<We are going to decorate Kernel#require with two goals.;To:RDoc::Markup::BlankLine o;
; [I"LFirst, by intercepting Kernel#require calls, we are able to autovivify ;TI"Mmodules on required directories, and also do internal housekeeping when ;TI"managed files are loaded.;T@o;
; [
I"ROn the other hand, if you publish a new version of a gem that is now managed ;TI"Rby Zeitwerk, client code can reference directly your classes and modules and ;TI"Rshould not require anything. But if someone has legacy require calls around, ;TI"Qthey will work as expected, and in a compatible way. This feature is by now ;TI"#EXPERIMENTAL and UNDOCUMENTED.;T@o;
; [I"MWe cannot decorate with prepend + super because Kernel has already been ;TI"Lincluded in Object, and changes in ancestors don't get propagated into ;TI"&already existing ancestor chains.;T;@;0I"(path);T@FI"Kernel;TcRDoc::NormalModule00