Sha256: 4cedd70909edf33732289ab2796c8b301a83b56ea4a66dcd648ce7ec7e8756ca

Contents?: true

Size: 573 Bytes

Versions: 7

Compression:

Stored size: 573 Bytes

Contents

module Zermelo
  module Records

    class Key

      # id       / if nil, it's a class variable
      # object   / :association, :attribute or :index
      # accessor / if a complex type, some way of getting sub-value
      attr_reader :klass, :name, :accessor, :type, :object

      attr_accessor :id

      # TODO better validation of data, e.g. accessor valid for type, etc.
      def initialize(opts = {})
        [:klass, :id, :name, :accessor, :type, :object].each do |iv|
          instance_variable_set("@#{iv}", opts[iv])
        end
      end

    end

  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
zermelo-1.4.3 lib/zermelo/records/key.rb
zermelo-1.4.2 lib/zermelo/records/key.rb
zermelo-1.4.1 lib/zermelo/records/key.rb
zermelo-1.4.0 lib/zermelo/records/key.rb
zermelo-1.3.0 lib/zermelo/records/key.rb
zermelo-1.2.1 lib/zermelo/records/key.rb
zermelo-1.2.0 lib/zermelo/records/key.rb