Class: LcpRuby::ModelFactory::TransformApplicator

Inherits:
Object
  • Object
show all
Defined in:
lib/lcp_ruby/model_factory/transform_applicator.rb

Instance Method Summary collapse

Constructor Details

#initialize(model_class, model_definition) ⇒ TransformApplicator

Returns a new instance of TransformApplicator.



4
5
6
7
# File 'lib/lcp_ruby/model_factory/transform_applicator.rb', line 4

def initialize(model_class, model_definition)
  @model_class = model_class
  @model_definition = model_definition
end

Instance Method Details

#apply!Object



9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/lcp_ruby/model_factory/transform_applicator.rb', line 9

def apply!
  @model_definition.fields.each do |field|
    next if field.virtual?
    type_transforms = field.type_definition&.transforms || []
    field_transforms = field.transforms

    # Merge: type-level first, then field-level (deduplicated)
    all_keys = (type_transforms + field_transforms).uniq
    next if all_keys.empty?

    apply_transforms(field, all_keys)
  end
end