Module: Chamomile::Model::ClassMethods

Defined in:
lib/chamomile/model.rb

Overview

Class-level helpers for model configuration.

Instance Method Summary collapse

Instance Method Details

#frozen_model!Object

Opt in to enforced immutability. After calling frozen_model!:

  • The model is frozen after initialize
  • #with is available to return modified copies
  • Any direct mutation raises FrozenError immediately


16
17
18
19
# File 'lib/chamomile/model.rb', line 16

def frozen_model!
  @frozen_model = true
  prepend(FrozenModelEnforcement)
end

#frozen_model?Boolean

Returns:

  • (Boolean)


21
22
23
# File 'lib/chamomile/model.rb', line 21

def frozen_model?
  @frozen_model == true
end