newbie: defined?(Rails)

hi,

i see the line

if defined?(Rails)

more and more in gems and other require statements. right now im looking at a gem and the line
if defined?(Rails)

is being called prior the first constructor of a class. this seems to be kinda related to autoload rails things, but im not sure.
what is it? if someone could shed some light on it. thx

It's checking whether Rails is defined. Typically you might do this if your gem/plugin had some rails features that you don't want to load (or can't be loaded) if your gem is being used in a non Rails context

Fred

ok, that makes sense. but where is that variable being ‘declared’ and or set? tia

ok, that makes sense. but where is that variable being 'declared' and or set?

Somewhere early in the Rails initialization process (There's probably a module called Rails - as soon as the file containing it is loaded it will spring into existence)

Fred

ok, thx for ur insight appreciate it