Module: Sequel::Database::FreezeDatasets

Defined in:
lib/sequel/extensions/freeze_datasets.rb

Defined Under Namespace

Modules: DatasetMethods

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.extended(db) ⇒ Object

Reset the default dataset for this database after loading the extension.



38
39
40
# File 'lib/sequel/extensions/freeze_datasets.rb', line 38

def self.extended(db)
  db.extend_datasets(DatasetMethods)
end

Instance Method Details

#datasetObject

Freeze datasets created from this dataset.



52
53
54
# File 'lib/sequel/extensions/freeze_datasets.rb', line 52

def dataset
  super.freeze
end

#from(*args, &block) ⇒ Object

Cache returned dataset if given a single argument and no block.



43
44
45
46
47
48
49
# File 'lib/sequel/extensions/freeze_datasets.rb', line 43

def from(*args, &block)
  if !block && args.length == 1 && (table = args[0]).is_a?(Symbol)
     @default_dataset.send(:cached_dataset, :"_from_#{table}_ds"){super}
  else
    super
  end
end