Sha256: fdd2ce3dcfef77a30c7384332aafb4f0b188b159cf8bc122780e8dadc2de43a4
Contents?: true
Size: 491 Bytes
Versions: 13
Compression:
Stored size: 491 Bytes
Contents
# frozen_string_literal: true require 'immutable_struct_ex' require_relative 'options' require_relative 'options_validatable' module MadFlatter # Defines methods and attributes to manage options. module Optionable include OptionsValidatable def options @options || Options.default end private def options=(value) options_hash = value.to_h validate_options! options: options_hash @options = Options.new(**options_hash) end end end
Version data entries
13 entries across 13 versions & 1 rubygems