Sha256: a19b2a04805f90d8c4bd619ddadaf1397e38e4bb0e52486513e42ed9ca15f724

Contents?: true

Size: 355 Bytes

Versions: 2

Compression:

Stored size: 355 Bytes

Contents

module PoroProperties
  module Defaults
    def self.included(base)
      base.extend ClassMethods
    end

    module ClassMethods
      attr_accessor :properties_defaults

      def property(name, default:)
        super(name)
        define_method(name) do
          instance_variable_get("@#{name}") || default
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
poro_properties-0.1.1 lib/poro_properties/defaults.rb
poro_properties-0.1.0 lib/poro_properties/defaults.rb