class Nydp::Runner

Public Class Methods

new(ns, stream, printer=nil, name=nil, manifest=[]) click to toggle source
Calls superclass method Nydp::Evaluator::new
# File lib/nydp/runner.rb, line 185
def initialize ns, stream, printer=nil, name=nil, manifest=[]
  super ns, name
  @printer    = printer
  @parser     = Nydp.new_parser
  @tokens     = Nydp.new_tokeniser stream
  @manifest   = manifest
end

Public Instance Methods

print(val) click to toggle source
run() click to toggle source
# File lib/nydp/runner.rb, line 197
def run
  Nydp.apply_function ns, :"script-run", :"script-start", name
  res = nil
  begin
    while !@tokens.finished
      expr = @parser.expression(@tokens)
      print(res = evaluate(expr, @manifest)) unless expr.nil?
    end
  ensure
    Nydp.apply_function ns, :"script-run", :"script-end", name
  end
  res
end