From 7cb459eb60a27571fb68ad2919f071e13b38614d Mon Sep 17 00:00:00 2001 From: Xavier Noria Date: Sat, 6 Feb 2010 16:11:21 +0100 Subject: AS guide: documents Kernel#require_library_or_gem --- .../guides/source/active_support_core_extensions.textile | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'railties/guides/source/active_support_core_extensions.textile') diff --git a/railties/guides/source/active_support_core_extensions.textile b/railties/guides/source/active_support_core_extensions.textile index 5d0bc01fee..7a6abf40b6 100644 --- a/railties/guides/source/active_support_core_extensions.textile +++ b/railties/guides/source/active_support_core_extensions.textile @@ -422,6 +422,20 @@ end NOTE: Defined in +active_support/core_ext/kernel/reporting.rb+. +h4. +require_library_or_gem+ + +The convenience method +require_library_or_gem+ tries to load its argument with a regular +require+ first. If it fails loads +rubygems+ and tries again. + +If the first attempt is a failure and +rubygems+ can't be loaded the method raises +LoadError+. On the other hand, if +rubygems+ is available but the argument is not loadable as a gem, the method gives up and +LoadError+ is also raised. + +For example, that's the way the MySQL adapter loads the MySQL library: + + +require_library_or_gem('mysql') + + +NOTE: Defined in +active_support/core_ext/kernel/requires.rb+. + h3. Extensions to +Module+ h4. Aliasing -- cgit v1.2.3