Sha256: 32827ec7c01ff494e457b0e0df913dae9c481b3bee16e1672a75624c38e2a74b
Contents?: true
Size: 786 Bytes
Versions: 1
Compression:
Stored size: 786 Bytes
Contents
require 'vedeu/api/base' require 'vedeu/api/line' require 'vedeu/support/interface_store' module Vedeu module API InterfaceNotSpecified = Class.new(StandardError) class View def self.build(name = '', &block) new(name).build(&block) end def initialize(name = '') fail Vedeu::API::InterfaceNotSpecified if name.nil? || name.empty? @name = name.to_s end def build(&block) self.instance_eval(&block) if block_given? attributes end def line(&block) attributes[:lines] << API::Line.build(&block) end def attributes @_attributes ||= { name: name, lines: [] } end def name return @name if InterfaceStore.query(@name) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
vedeu-0.1.5 | lib/vedeu/api/view.rb |