Sha256: 0169b5830285bebc626774fb8e90729b86cd204b788731993782f54d876ae8a8
Contents?: true
Size: 978 Bytes
Versions: 1
Compression:
Stored size: 978 Bytes
Contents
module Zebra module Epl module Printable class MissingAttributeError < StandardError def initialize(message) super("Can't print if #{message}") end end attr_reader :position, :x, :y attr_accessor :data def initialize(options = {}) options.each_pair { |attribute, value| self.__send__ "#{attribute}=", value } end def position=(coords) @position, @x, @y = coords, coords[0], coords[1] end def rotation=(rot) Rotation.validate_rotation rot @rotation = rot end def rotation @rotation || Rotation::NO_ROTATION end private def check_attributes raise MissingAttributeError.new("the X value is not given") unless @x raise MissingAttributeError.new("the Y value is not given") unless @y raise MissingAttributeError.new("the data to be printed is not given") unless @data end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
zebra-epl-0.0.1 | lib/zebra/epl/printable.rb |