Sha256: d3b85114a2b31ab600a7278f2e21f1eadcefe7c25dee7e35e3a41a62e15abcc2

Contents?: true

Size: 646 Bytes

Versions: 8

Compression:

Stored size: 646 Bytes

Contents

require 'sdbm'

module Moneta
  module Adapters
    # SDBM backend
    # @api public
    class SDBM
      include Defaults
      include DBMAdapter
      include IncrementSupport
      include CreateSupport
      include EachKeySupport

      # @param [Hash] options
      # @option options [String] :file Database file
      # @option options [::SDBM] :backend Use existing backend instance
      def initialize(options = {})
        @backend = options[:backend] ||
          begin
            raise ArgumentError, 'Option :file is required' unless options[:file]
            ::SDBM.new(options[:file])
          end
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
moneta-1.4.2 lib/moneta/adapters/sdbm.rb
moneta-1.4.1 lib/moneta/adapters/sdbm.rb
moneta-1.4.0 lib/moneta/adapters/sdbm.rb
moneta-1.3.0 lib/moneta/adapters/sdbm.rb
moneta-1.2.1 lib/moneta/adapters/sdbm.rb
moneta-1.2.0 lib/moneta/adapters/sdbm.rb
moneta-1.1.1 lib/moneta/adapters/sdbm.rb
moneta-1.1.0 lib/moneta/adapters/sdbm.rb