Putting this in only to take it out soon

dev
Andy Meneely 2014-07-09 22:43:28 -04:00
parent a6e3faa003
commit 0224856c9a
7 changed files with 100 additions and 0 deletions

View File

@ -0,0 +1,17 @@
module Squib
module Commands
module Visitable
def accept visitor
visitor.visit self
end
end
class Command
def accept visitor
raise NotImpelementedError.new
end
end
end
end

View File

@ -0,0 +1,17 @@
module Squib
module Commands
class Font < Command
include Visitable
attr_accessor :type, :size
def initialize(type,size, options)
@type = type
@size = size
#no other options yet
end
end
end
end

View File

@ -0,0 +1,17 @@
module Squib
module Commands
class SetFont < Command
include Visitable
attr_accessor :type, :size, :options
def initialize(type, size, options)
@type = type
@size = size
#no options yet
end
end
end
end

11
lib/squib/queue.rb Normal file
View File

@ -0,0 +1,11 @@
module Squib
#Global queue of commands
CMDS = []
def queue_command(cmd)
unless cmd.instance_of? Squib::Commands::Command
raise ArgumentError, "Only RockDeck::Commands allowed here"
end
CMDS << cmd
end
end

View File

@ -0,0 +1,11 @@
module Squib
module Render
class RenderContext
attr_accessor :font #current font we're using
attr_accessor :cur #index of the current card rendering
attr_accessor :cards #total number of cards we're iterating over
end
end
end

View File

@ -0,0 +1,12 @@
module Squib
module Visitors
class BaseVisitor
def visit subject
method_name = "visit_#{subject.class}".intern
send(method_name, subject)
end
end
end
end

View File

@ -0,0 +1,15 @@
module Squib
module Visitors
class VerifyVistior < BaseVisitor
def visit_Font
puts "Verify Font!!"
end
def visit_SetFont
puts "Verify SetFont!!"
end
end
end
end