Module: ActiveEntity::Type
- Defined in:
- lib/active_entity/type/registry.rb,
lib/active_entity/type.rb,
lib/active_entity/type/date.rb,
lib/active_entity/type/json.rb,
lib/active_entity/type/text.rb,
lib/active_entity/type/time.rb,
lib/active_entity/type/date_time.rb,
lib/active_entity/type/serialized.rb,
lib/active_entity/type/modifiers/array.rb,
lib/active_entity/type/unsigned_integer.rb,
lib/active_entity/type/internal/timezone.rb,
lib/active_entity/type/modifiers/array_without_blank.rb
Overview
:stopdoc:
Defined Under Namespace
Modules: Internal, Modifiers Classes: Date, DateTime, DecorationRegistration, Json, Registration, Registry, Serialized, Text, Time, UnsignedInteger
Constant Summary collapse
- BigInteger =
ActiveModel::Type::BigInteger
- Binary =
ActiveModel::Type::Binary
- Boolean =
ActiveModel::Type::Boolean
- Decimal =
ActiveModel::Type::Decimal
- Float =
ActiveModel::Type::Float
- Integer =
ActiveModel::Type::Integer
- String =
ActiveModel::Type::String
- Value =
ActiveModel::Type::Value
Class Attribute Summary collapse
-
.registry ⇒ Object
:nodoc:.
Class Method Summary collapse
-
.default_value ⇒ Object
:nodoc:.
-
.lookup(*args, **kwargs) ⇒ Object
:nodoc:.
-
.register(type_name, klass = nil, **options, &block) ⇒ Object
Add a new type to the registry, allowing it to be referenced as a symbol by ActiveEntity::Base.attribute.
Class Attribute Details
.registry ⇒ Object
:nodoc:
25 26 27 |
# File 'lib/active_entity/type.rb', line 25 def registry @registry end |
Class Method Details
.default_value ⇒ Object
:nodoc:
44 45 46 |
# File 'lib/active_entity/type.rb', line 44 def default_value # :nodoc: @default_value ||= Value.new end |
.lookup(*args, **kwargs) ⇒ Object
:nodoc:
40 41 42 |
# File 'lib/active_entity/type.rb', line 40 def lookup(*args, **kwargs) # :nodoc: registry.lookup(*args, **kwargs) end |
.register(type_name, klass = nil, **options, &block) ⇒ Object
Add a new type to the registry, allowing it to be referenced as a symbol by ActiveEntity::Base.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.
36 37 38 |
# File 'lib/active_entity/type.rb', line 36 def register(type_name, klass = nil, **, &block) registry.register(type_name, klass, **, &block) end |