Sha256: 75a28d1db24d0335aae55731ebf7b54a68ff3e7f14b34f45d5056b2d395ccec2
Contents?: true
Size: 972 Bytes
Versions: 3
Compression:
Stored size: 972 Bytes
Contents
# coding: utf-8 module Thinreports module Core::Shape # @abstract class Base::Internal include Utils extend Forwardable def self.format_delegators(*args) def_delegators :format, *args end private_class_method :format_delegators attr_reader :parent attr_reader :format attr_writer :style attr_accessor :states def initialize(parent, format) @parent = parent @format = format @states = {} @style = nil @finalized_attributes = nil end def style raise NotImplementedError end def copy(new_parent, &block) new_internal = self.class.new(new_parent, format) new_internal.style = style.copy new_internal.states = deep_copy(states) block.call(new_internal) if block_given? new_internal end def type_of? raise NotImplementedError end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
thinreports-0.9.1 | lib/thinreports/core/shape/base/internal.rb |
thinreports-0.9.0 | lib/thinreports/core/shape/base/internal.rb |
thinreports-0.8.2 | lib/thinreports/core/shape/base/internal.rb |