class Class
Public Instance Methods
atom_attr_accessor(*args)
click to toggle source
# File lib/atom_attr_accessor.rb, line 2 def atom_attr_accessor(*args) self.class_eval(" require 'java' require 'clojure-1.5.1.jar' java_import 'clojure.lang.LockingTransaction' java_import 'clojure.lang.Atom' ") args.each do |arg| self.class_eval(" def #{arg} @#{arg}.deref unless @#{arg}.nil? end def #{arg}=(val) if @#{arg}.nil? @#{arg} = Atom.new(val) else @#{arg}.reset val end end ") end end