Sha256: 60171fd945ee5fe67131186b91e42c19a1b3bd00b437e51166b3ceb4cfb790b5
Contents?: true
Size: 942 Bytes
Versions: 1
Compression:
Stored size: 942 Bytes
Contents
# frozen_string_literal: true module Magicka # @api public # # Class representing an element agregator, representing a model class Aggregator autoload :MethodBuilder, 'magicka/aggregator/method_builder' class << self def with_element(element_class, method_name = nil) MethodBuilder .new(self, element_class, method_name) .prepare .build end end attr_reader :model def initialize(renderer, model) @renderer = renderer @model = model end def with_model(model, base: self.model) new_model = [base, model].compact.join('.') yield self.class.new(renderer, new_model) end def equal?(other) return unless other.class == self.class other.renderer == renderer && other.model == model end alias == equal? protected attr_reader :renderer delegate :render, to: :renderer end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
magicka-0.5.3 | lib/magicka/aggregator.rb |