Module: DeclareSchema

Defined in:
lib/declare_schema.rb,
lib/declare_schema/model.rb,
lib/declare_schema/command.rb,
lib/declare_schema/railtie.rb,
lib/declare_schema/version.rb,
lib/declare_schema/model/field_spec.rb,
lib/declare_schema/field_declaration_dsl.rb,
lib/declare_schema/model/index_definition.rb,
lib/generators/declare_schema/support/model.rb,
lib/declare_schema/model/foreign_key_definition.rb,
lib/generators/declare_schema/support/thor_shell.rb,
lib/declare_schema/model/table_options_definition.rb,
lib/generators/declare_schema/model/model_generator.rb,
lib/generators/declare_schema/support/eval_template.rb,
lib/generators/declare_schema/migration/migration_generator.rb,
lib/declare_schema/extensions/active_record/fields_declaration.rb

Defined Under Namespace

Modules: Command, FieldsDsl, Model, Support Classes: Boolean, FieldDeclarationDsl, MigrationGenerator, ModelGenerator, Railtie

Constant Summary collapse

PLAIN_TYPES =
{
  boolean:  Boolean,
  date:     Date,
  datetime: ActiveSupport::TimeWithZone,
  time:     Time,
  integer:  Integer,
  decimal:  BigDecimal,
  float:    Float,
  string:   String,
  text:     String
}.freeze
VERSION =
"0.6.0"

Class Method Summary collapse

Class Method Details

.to_class(type) ⇒ Object



25
26
27
28
29
30
31
32
33
34
# File 'lib/declare_schema.rb', line 25

def to_class(type)
  case type
  when Class
    type
  when Symbol, String
    PLAIN_TYPES[type.to_sym]
  else
    raise ArgumentError, "expected Class or Symbol or String: got #{type.inspect}"
  end
end