Sha256: 387c88989698acf6172f8b74e62764e16d1089ac825c975d31225234534b2d56

Contents?: true

Size: 757 Bytes

Versions: 5

Compression:

Stored size: 757 Bytes

Contents

require "dat/science/experiment"

module Dat

  # Public: Include this module if you like science.
  module Science

    # Public: Do some science.
    def science(name, &block)
      Science.experiment.new(name, &block).run
    end

    # Public: The Class to use for all `science` experiments. Default is
    # `Dat::Science::Experiment`.
    def self.experiment
      @experiment ||= Dat::Science::Experiment
    end

    # Public: Set the Class to use for all `science` experiments.
    # Returns `klass`.
    def self.experiment=(klass)
      @experiment = klass
    end

    # Internal: Reset any static configuration (primarily
    # `Dat::Science.experiment`. Returns `self`.
    def self.reset
      @experiment = nil

      self
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
dat-science-1.2.1 lib/dat/science.rb
dat-science-1.2.0 lib/dat/science.rb
dat-science-1.1.0 lib/dat/science.rb
dat-science-1.0.0 lib/dat/science.rb
dat-science-0.0.0 lib/dat/science.rb