Sha256: 1d1ecb58384314f010f7b216ea5039a6861421fd91460f63191be372d8a3ca9d
Contents?: true
Size: 812 Bytes
Versions: 20
Compression:
Stored size: 812 Bytes
Contents
module Roger class Release # The Processors namespace module Processors # Abstract Processor class class Base def initialize(options = {}) @options = {} @options.update(options) if options end def call(_release, _options = {}) fail ArgumentError, "Implement in subclass" end end def self.register(name, processor) fail ArgumentError, "Processor name '#{name.inspect}' already in use" if map.key?(name) fail ArgumentError, "Name must be a symbol" unless name.is_a?(Symbol) map[name] = processor end def self.map @_map ||= {} end end end end require File.dirname(__FILE__) + "/processors/mockup" require File.dirname(__FILE__) + "/processors/url_relativizer"
Version data entries
20 entries across 20 versions & 1 rubygems