module Zresume::Person::Core
Public Instance Methods
info(*attrs)
click to toggle source
# File lib/zresume/person.rb, line 21 def info *attrs return @info if attrs.empty? attr_reader *attrs attrs.each do |key| metaclass.instance_eval do define_method key do |val=nil, &block| @info ||= {} val = block if !val and block @info[key] = val end end end#set class method class_eval do define_method(:initialize) do self.class.info.each do |k, v| if v.respond_to? :lambda? s = Zresume::List[:title, k] s.instance_eval &v v = s end instance_variable_set("@#{k}", v) self.class.info[k] = v end end end#initialize, add the instance variables end
metaclass()
click to toggle source
# File lib/zresume/person.rb, line 15 def metaclass class << self self end end