module Polecat::DocumentResource

Public Instance Methods

create_reader_for(name) click to toggle source
# File lib/polecat/document_resource.rb, line 21
    def create_reader_for name
      mod.module_eval <<-RUBYCODE
        def #{name.to_s}
          attribute_get :#{name}
        end
      RUBYCODE
    end
create_writer_for(name) click to toggle source
# File lib/polecat/document_resource.rb, line 29
    def create_writer_for name
      mod.module_eval <<-RUBYCODE
        def #{name.to_s}= o
          attribute_set :#{name}, o
        end
      RUBYCODE
    end
field(name, options = {}) click to toggle source
# File lib/polecat/document_resource.rb, line 3
def field name, options = {}
  attributes = self.instance_variable_get :@attributes
  attributes[name.to_sym] = Document::OPTIONS.merge(options)

  create_reader_for name
  create_writer_for name
end
mod() click to toggle source
# File lib/polecat/document_resource.rb, line 11
def mod
  if !@mod
    @mod = Module.new
    self.class_eval do
      include @mod
    end
  end
  @mod
end