A library of utility services and concerns.
Utility class for initializing a library or project.
An initializer is used to set up the project, including loading configuration, setting initial data or states, and initializing dependencies.
Using an initializer provides several advantages:
Defining An Initializer
module Space
@initializer = SleepingKingStudios::Tools::Toolbox::Initializer.new do
# Initializers can safely call other initializers to ensure
# dependencies are set up.
Physics.initializer.call
Space.load_configuration
end
def self.initializer = @initializer
endCalling An Initializer
# In spec/spec_helper.rb
require 'space'
Space.initializer.call#initialize(&block) => Initializer
#call => Object
Runs the initialization block exactly once.
Back to Documentation | Reference | SleepingKingStudios | SleepingKingStudios::Tools | SleepingKingStudios::Tools::Toolbox