instance value is not instance variable
Ruby
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
examples
lib
test
.gitignore
.travis.yml
.yardopts
Gemfile
MIT-LICENSE
README.md
Rakefile
instancevalue.gemspec

README.md

instancevalue

Build Status Gem Version

Description

Constant values for each instance.

Features

instance_variable like API

  • .value_reader
  • #instance_value_defined?
  • #instance_value_get
  • #instance_value_set
  • #instance_values
  • #remove_instance_value

Aliased shortname

  • #val

Usage

require 'instancevalue'

class Person

  include InstanceValue

  value_reader :birthday

  def initialize(birthday)
    val :birthday, birthday
  end

  def age
    (Time.now - birthday) / (60 * 60 * 24 * 365)
  end

end

person = Person.new Time.at YOUR_BIRTHDAY
person.birthday                                 #=> YOUR_BIRTHDAY
person.age                                      #=> age at runtime
person.instance_eval{val :birthday, Time.now}   #=> Exception

Requirements

  • Expect Ruby 2.3.3 or later

Install

gem install instancevalue

Development

bundle exec rake

Link

License

The MIT X11 License Copyright (c) 2012 Kenichi Kamiya See MIT-LICENSE for further details.