Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class VersionBlock
- def initialize parent
- @parent = parent
- end
- def version_major= number
- @version_major = number
- end
- def version_minor= number
- @version_minor = number
- end
- def revision_num= number
- @Revision_mum = number
- end
- def author_info= *object
- @author_info = object
- end
- def website_address= address
- @website_address = address
- end
- # def method_missing method, *args, &block
- # @parent.send method, *args, &block
- # end
- attr_writer :version_major,
- :version_minor,
- :revision_num,
- :author_info,
- :website_loc
- attr_reader :version_major,
- :version_minor,
- :revision_num,
- :author_info,
- :website_loc
- end
- class AddIn
- private
- def VersionBlock
- VersionBlock.new self
- end
- public
- def initialize name, *version, &block
- if block_given?
- @parent = eval "self", block.binding
- @VersionInfo = VersionBlock.new @parent
- instance_eval &block
- puts VersionBlock.VersionMajor
- end
- end
- # def method_missing method, &block
- # @components.each_with_index do |object, i|
- # begin
- # return object if object.class.to_s == method.to_s
- # rescue NoMethodError => err
- # raise NoMethodError, err.message if i == @components.size
- # end
- # end
- #
- # nil
- # end
- private
- @parent = nil
- @VersionInfo = {}
- end
- AddIn.new "Microsoft OLE helper for Windows", :X, :Y do
- def Proc
- puts "Hi, there!"
- end
- VersionBlock do
- version_major 1
- version_minor 0
- revision_num 0
- author_info "", ""
- website ""
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement