From ae147b45bb4aa2168e104ffc989e42f5c9dbfd80 Mon Sep 17 00:00:00 2001 From: Xavier Noria Date: Tue, 10 Aug 2010 03:46:21 +0200 Subject: AS guide: documents Module#(instance_)method_names --- .../guides/source/active_support_core_extensions.textile | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'railties/guides/source') diff --git a/railties/guides/source/active_support_core_extensions.textile b/railties/guides/source/active_support_core_extensions.textile index 672bf750bf..e0c69516cf 100644 --- a/railties/guides/source/active_support_core_extensions.textile +++ b/railties/guides/source/active_support_core_extensions.textile @@ -1066,6 +1066,18 @@ In the previous example the macro generates +User#avatar_size+ rather than +User NOTE: Defined in +active_support/core_ext/module/delegation.rb+ +h4. Method Names + +The builtin methods +instance_methods+ and +methods+ return method names as strings or symbols depending on the Ruby version. Active Support defines +instance_method_names+ and +method_names+ to be equivalent to them, respectively, but always getting strings back. + +For example, +ActionView::Helpers::FormBuilder+ knows this array difference is going to work no matter the Ruby version: + + +self.field_helpers = (FormHelper.instance_method_names - ['form_for']) + + +NOTE: Defined in +active_support/core_ext/module/method_names.rb+ + h3. Extensions to +Class+ h4. Class Attributes -- cgit v1.2.3