diff options
author | Sean Griffin <sean@thoughtbot.com> | 2015-02-17 14:17:59 -0700 |
---|---|---|
committer | Sean Griffin <sean@thoughtbot.com> | 2015-02-17 14:17:59 -0700 |
commit | 82d12eb9045cba57172ec7cc0786d0f72a8b711f (patch) | |
tree | b43fb5d830bd8e2d15e638907ae06b95f46aca32 /activerecord/lib/active_record/type.rb | |
parent | ad127d8836165bba70290a9429eee5b16033e20c (diff) | |
download | rails-82d12eb9045cba57172ec7cc0786d0f72a8b711f.tar.gz rails-82d12eb9045cba57172ec7cc0786d0f72a8b711f.tar.bz2 rails-82d12eb9045cba57172ec7cc0786d0f72a8b711f.zip |
Add docs for the type registry
Diffstat (limited to 'activerecord/lib/active_record/type.rb')
-rw-r--r-- | activerecord/lib/active_record/type.rb | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/activerecord/lib/active_record/type.rb b/activerecord/lib/active_record/type.rb index cddd56a20d..2c0cda69d0 100644 --- a/activerecord/lib/active_record/type.rb +++ b/activerecord/lib/active_record/type.rb @@ -26,10 +26,21 @@ module ActiveRecord class << self attr_accessor :registry # :nodoc: + delegate :add_modifier, to: :registry - delegate :register, :add_modifier, to: :registry + # Add a new type to the registry, allowing it to be referenced as a + # symbol by ActiveRecord::Attributes::ClassMethods#attribute. If your + # type is only meant to be used with a specific database adapter, you can + # do so by passing +adapter: :postgresql+. If your type has the same + # name as a native type for the current adapter, an exception will be + # raised unless you specify an +:override+ option. +override: true+ will + # cause your type to be used instead of the native type. +override: + # false+ will cause the native type to be used over yours if one exists. + def register(type_name, klass = nil, **options, &block) + registry.register(type_name, klass, **options, &block) + end - def lookup(*args, adapter: current_adapter_name, **kwargs) + def lookup(*args, adapter: current_adapter_name, **kwargs) # :nodoc: registry.lookup(*args, adapter: adapter, **kwargs) end |