Sha256: b0c8ec48af2b0eb9456b6bd41bcc7ca3d2512b7e6c76d757f3216e7999affa69

Contents?: true

Size: 558 Bytes

Versions: 31

Compression:

Stored size: 558 Bytes

Contents

require 'rom/mapper'

module ROM
  # Abstract processor class
  #
  # Every ROM processor should inherit from this class
  #
  # @api public
  class Processor
    # Hook used to auto-register a processor class
    #
    # @api private
    def self.inherited(processor)
      Mapper.register_processor(processor)
    end

    # Required interface to be implemented by descendants
    #
    # @return [Processor]
    #
    # @abstract
    #
    # @api private
    def self.build
      raise NotImplementedError, "+build+ must be implemented"
    end
  end
end

Version data entries

31 entries across 31 versions & 2 rubygems

Version Path
rom-mapper-1.2.1 lib/rom/processor.rb
rom-mapper-1.2.0 lib/rom/processor.rb
rom-mapper-1.1.0 lib/rom/processor.rb
rom-mapper-1.0.2 lib/rom/processor.rb
rom-mapper-1.0.1 lib/rom/processor.rb
rom-mapper-1.0.0 lib/rom/processor.rb
rom-mapper-1.0.0.rc2 lib/rom/processor.rb
rom-mapper-1.0.0.rc1 lib/rom/processor.rb
rom-mapper-1.0.0.beta3 lib/rom/processor.rb
rom-mapper-1.0.0.beta2 lib/rom/processor.rb
rom-mapper-1.0.0.beta1 lib/rom/processor.rb
rom-mapper-0.5.1 lib/rom/processor.rb
rom-mapper-0.5.0 lib/rom/processor.rb
rom-mapper-0.5.0.rc1 lib/rom/processor.rb
rom-mapper-0.5.0.beta1 lib/rom/processor.rb
rom-mapper-0.4.0 lib/rom/processor.rb
rom-mapper-0.3.0 lib/rom/processor.rb
rom-mapper-0.3.0.rc1 lib/rom/processor.rb
rom-mapper-0.3.0.beta1 lib/rom/processor.rb
rom-mapper-0.2.0 lib/rom/processor.rb