class Lutaml::Model::ComparableModel::DiffContext

def format_comparable_mapper(obj, parent_node, color = nil)

Returns:
  • (String) - Formatted ComparableModel object

Parameters:
  • obj (ComparableModel) -- The object to format
def format_comparable_mapper(obj, parent_node, color = nil)
  obj.class.attributes.each do |attr_name, attr_type|
    attr_value = obj.send(attr_name)
    attr_node = Tree.new("#{attr_name} (#{type_name(attr_type)}):",
                         color: color)
    parent_node.add_child(attr_node)
    if attr_value.is_a?(ComparableModel)
      format_comparable_mapper(attr_value, attr_node, color)
    else
      value_node = Tree.new(format_value(attr_value), color: color)
      attr_node.add_child(value_node)
    end
  end
end