Sha256: 9154798ddfea6845d29c920806360a9356276583227508b05b37a06faf1a8e82
Contents?: true
Size: 579 Bytes
Versions: 3
Compression:
Stored size: 579 Bytes
Contents
# frozen_string_literal: true require_relative 'statement' module Basic101 class PrintStatement < Statement def initialize(args = []) @args = args end def execute(runtime) if @args.empty? runtime.output.print "\n" else arg_values = @args.map do |arg| arg.eval(runtime) end arg_values.each do |value| value.print_string runtime.output end arg_values.last.print_new_line runtime.output end end protected def state super + [@args] end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
basic101-1.0.2 | lib/basic101/print_statement.rb |
basic101-1.0.1 | lib/basic101/print_statement.rb |
basic101-1.0.0 | lib/basic101/print_statement.rb |