Tools

A library of utility services and concerns.

Class: SleepingKingStudios::Tools::Toolbox::Initializer

Parent Namespace
SleepingKingStudios::Tools::Toolbox
Defined In
lib/sleeping_king_studios/tools/toolbox/initializer.rb

Table Of Contents

Overview

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:

Examples

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
end

Calling An Initializer

# In spec/spec_helper.rb

require 'space'

Space.initializer.call

Back To Top

Constructor

#initialize(&block) => Initializer

Yields

Returns

Raises

Back To Top

Instance Methods

#call => Object

Runs the initialization block exactly once.

Back To Top


Back to Documentation | Reference | SleepingKingStudios | SleepingKingStudios::Tools | SleepingKingStudios::Tools::Toolbox