module RAWG::Utils::ClassMethods
Public Instance Methods
lazy_attr_accessor(*attrs, init:)
click to toggle source
# File lib/rawg/utils.rb, line 10 def lazy_attr_accessor(*attrs, init:) attr_writer(*attrs) lazy_attr_reader(*attrs, init: init) end
lazy_attr_reader(*attrs, init:)
click to toggle source
# File lib/rawg/utils.rb, line 15 def lazy_attr_reader(*attrs, init:) attrs.each do |attr| define_method(attr) do instance_variable_get("@#{attr}") || begin init.call(attr) instance_variable_get("@#{attr}") end end end end