Class: ActiveRecord::ConnectionAdapters::SQLite3::Column
- Inherits:
-
ConnectionAdapters::Column
- Object
- ConnectionAdapters::Column
- ActiveRecord::ConnectionAdapters::SQLite3::Column
- Defined in:
- lib/active_record/connection_adapters/sqlite3/column.rb
Overview
:nodoc:
Instance Attribute Summary collapse
-
#rowid ⇒ Object
readonly
Returns the value of attribute rowid.
Instance Method Summary collapse
- #==(other) ⇒ Object (also: #eql?)
- #auto_increment? ⇒ Boolean
- #auto_incremented_by_db? ⇒ Boolean
- #encode_with(coder) ⇒ Object
- #has_default? ⇒ Boolean
- #hash ⇒ Object
- #init_with(coder) ⇒ Object
-
#initialize(auto_increment: nil, rowid: false, generated_type: nil) ⇒ Column
constructor
A new instance of Column.
- #virtual? ⇒ Boolean
- #virtual_stored? ⇒ Boolean
Constructor Details
#initialize(auto_increment: nil, rowid: false, generated_type: nil) ⇒ Column
Returns a new instance of Column.
9 10 11 12 13 14 |
# File 'lib/active_record/connection_adapters/sqlite3/column.rb', line 9 def initialize(*, auto_increment: nil, rowid: false, generated_type: nil, **) super @auto_increment = auto_increment @rowid = rowid @generated_type = generated_type end |
Instance Attribute Details
#rowid ⇒ Object (readonly)
Returns the value of attribute rowid.
7 8 9 |
# File 'lib/active_record/connection_adapters/sqlite3/column.rb', line 7 def rowid @rowid end |
Instance Method Details
#==(other) ⇒ Object Also known as: eql?
46 47 48 49 50 51 52 |
# File 'lib/active_record/connection_adapters/sqlite3/column.rb', line 46 def ==(other) other.is_a?(Column) && super && auto_increment? == other.auto_increment? && rowid == other.rowid && generated_type == other.generated_type end |
#auto_increment? ⇒ Boolean
16 17 18 |
# File 'lib/active_record/connection_adapters/sqlite3/column.rb', line 16 def auto_increment? @auto_increment end |
#auto_incremented_by_db? ⇒ Boolean
20 21 22 |
# File 'lib/active_record/connection_adapters/sqlite3/column.rb', line 20 def auto_incremented_by_db? auto_increment? || rowid end |
#encode_with(coder) ⇒ Object
41 42 43 44 |
# File 'lib/active_record/connection_adapters/sqlite3/column.rb', line 41 def encode_with(coder) coder["auto_increment"] = @auto_increment super end |
#has_default? ⇒ Boolean
32 33 34 |
# File 'lib/active_record/connection_adapters/sqlite3/column.rb', line 32 def has_default? super && !virtual? end |
#hash ⇒ Object
55 56 57 58 59 60 61 |
# File 'lib/active_record/connection_adapters/sqlite3/column.rb', line 55 def hash Column.hash ^ super.hash ^ auto_increment?.hash ^ rowid.hash ^ virtual?.hash end |
#init_with(coder) ⇒ Object
36 37 38 39 |
# File 'lib/active_record/connection_adapters/sqlite3/column.rb', line 36 def init_with(coder) @auto_increment = coder["auto_increment"] super end |
#virtual? ⇒ Boolean
24 25 26 |
# File 'lib/active_record/connection_adapters/sqlite3/column.rb', line 24 def virtual? !@generated_type.nil? end |
#virtual_stored? ⇒ Boolean
28 29 30 |
# File 'lib/active_record/connection_adapters/sqlite3/column.rb', line 28 def virtual_stored? virtual? && @generated_type == :stored end |