project-eutopia/keisan

View on GitHub
lib/keisan/ast/bitwise_left_shift.rb

Summary

Maintainability
A
25 mins
Test Coverage
module Keisan
  module AST
    class BitwiseLeftShift < BitwiseOperator
      def self.symbol
        :<<
      end

      def blank_value
        0
      end

      def evaluate(context = nil)
        children[1..-1].inject(children.first.evaluate(context)) {|total, child| total << child.evaluate(context)}
      end
    end
  end
end