class Sexpir::Visitor

Public Instance Methods

visitAssign(assign,args=nil) click to toggle source
# File lib/sexpir/visitor.rb, line 42
def visitAssign assign,args=nil
  assign.lhs.accept(self)
  assign.rhs.accept(self)
end
visitBinary(binary,args=nil) click to toggle source
# File lib/sexpir/visitor.rb, line 62
def visitBinary binary,args=nil
  binary.lhs.accept(self)
  binary.rhs.accept(self)
end
visitBody(body,args=nil) click to toggle source
# File lib/sexpir/visitor.rb, line 38
def visitBody body,args=nil
  body.stmts.each{|stmt| stmt.accept(self)}
end
visitCircuit(circuit,args=nil) click to toggle source
# File lib/sexpir/visitor.rb, line 5
def visitCircuit circuit,args=nil
  circuit.name
  circuit.inputs.each{|input| input.accept(self)}
  circuit.outputs.each{|output| output.accept(self)}
  circuit.signals.each{|signal| signal.accept(self)}
  circuit.body.accept(self)
end
visitComponent(component,args=nil) click to toggle source
# File lib/sexpir/visitor.rb, line 47
def visitComponent component,args=nil
  name=component.name
  type=component.type
  "component #{name} => #{type}"
end
visitConnect(connect,args=nil) click to toggle source
# File lib/sexpir/visitor.rb, line 53
def visitConnect connect,args=nil
  connect.source
  connect.sink
end
visitExpression(expr,args=nil) click to toggle source
# File lib/sexpir/visitor.rb, line 59
def visitExpression expr,args=nil
end
visitInput(input,args=nil) click to toggle source
# File lib/sexpir/visitor.rb, line 28
def visitInput input,args=nil
  input.name
  input.type
end
visitIo(io,args=nil) click to toggle source
# File lib/sexpir/visitor.rb, line 18
def visitIo io,args=nil
  io.name
  io.type
end
visitOutput(output,args=nil) click to toggle source
# File lib/sexpir/visitor.rb, line 33
def visitOutput output,args=nil
  output.name
  output.type
end
visitPort(port,args=nil) click to toggle source
# File lib/sexpir/visitor.rb, line 23
def visitPort port,args=nil
  port.name
  port.type
end
visitSignal(sig,args=nil) click to toggle source
# File lib/sexpir/visitor.rb, line 13
def visitSignal sig,args=nil
  signal.name
  signal.type
end
visitTerm(term,args=nil) click to toggle source
# File lib/sexpir/visitor.rb, line 67
def visitTerm term,args=nil
  term
end
visitVar(var,args=nil) click to toggle source
# File lib/sexpir/visitor.rb, line 71
def visitVar var,args=nil
  var.name
end