class ActiveRecord::FixtureSet::ModelMetadata

Experimental RBS support (using type sampling data from the type_fusion project).

# sig/active_record/fixture_set/model_metadata.rbs

class ActiveRecord::FixtureSet::ModelMetadata
  def has_primary_key_column?: () -> true
  def inheritance_column_name: () -> String
  def primary_key_name: () -> String
  def primary_key_type: () -> Symbol
  def timestamp_column_names: () -> untyped
end

:nodoc:

def has_primary_key_column?

Experimental RBS support (using type sampling data from the type_fusion project).

def has_primary_key_column?: () -> true

This signature was generated using 1 sample from 1 application.

def has_primary_key_column?
  @has_primary_key_column ||= primary_key_name &&
    @model_class.columns.any? { |col| col.name == primary_key_name }
end

def inheritance_column_name

Experimental RBS support (using type sampling data from the type_fusion project).

def inheritance_column_name: () -> String

This signature was generated using 1 sample from 1 application.

def inheritance_column_name
  @inheritance_column_name ||= @model_class && @model_class.inheritance_column
end

def initialize(model_class)

:nodoc:
def initialize(model_class)
  @model_class = model_class
end

def primary_key_name

Experimental RBS support (using type sampling data from the type_fusion project).

def primary_key_name: () -> String

This signature was generated using 2 samples from 1 application.

def primary_key_name
  @primary_key_name ||= @model_class && @model_class.primary_key
end

def primary_key_type

Experimental RBS support (using type sampling data from the type_fusion project).

def primary_key_type: () -> Symbol

This signature was generated using 1 sample from 1 application.

def primary_key_type
  @primary_key_type ||= @model_class && @model_class.type_for_attribute(@model_class.primary_key).type
end

def timestamp_column_names

Experimental RBS support (using type sampling data from the type_fusion project).

def timestamp_column_names: () -> untyped

This signature was generated using 1 sample from 1 application.

def timestamp_column_names
  @model_class.all_timestamp_attributes_in_model
end