class Lutaml::Hal::GlobalRegister

example_register = global_register.get(:example)
global_register.register(:example, ExampleModelRegister.new)
global_register = GlobalRegister.instance
@example
It ensures that each model register is unique and provides a way to access them globally.
This class is a singleton that manages the registration and retrieval of model registers.
Global register for model registers

def delete(name)

def delete(name)
  return unless @model_registers[name]
  @model_registers.delete(name)
end

def get(name)

def get(name)
  raise "Model register with name #{name} not found" unless @model_registers[name]
  @model_registers[name]
end

def initialize

def initialize
  @model_registers = {}
end

def register(name, model_register)

def register(name, model_register)
  if @model_registers[name] && @model_registers[name] != model_register
    raise "Model register with name #{name} replacing another one" \
          " (#{@model_registers[name].inspect} vs #{model_register.inspect})"
  end
  @model_registers[name] = model_register
end