Sha256: 799dd2dc212369b94bfc2621dd8c667716d3cb73e23c55ef0c8713f7ccce9f0c

Contents?: true

Size: 547 Bytes

Versions: 1

Compression:

Stored size: 547 Bytes

Contents

require 'gobstones/modules/equal_by_class'

module Gobstones

  module Lang

    class CmdBlock

      include Gobstones::EqualByClass

      attr_reader :commands

      def self.empty
        self.new []
      end

      def initialize(commands)
        @commands = commands
      end

      def ==(other)
        super(other) && self.commands == other.commands
      end

      def empty?
        commands.empty?
      end

      def evaluate(context)
        commands.each { |command| command.evaluate context }
      end

    end

  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
gobstones-0.0.1.1 lib/gobstones/lang/commands/command_block.rb