Sha256: f34670d2d97e43b256f9f5931332dd3ed1f66921f50b4b4c98d48a7ca20f21c9

Contents?: true

Size: 513 Bytes

Versions: 5

Compression:

Stored size: 513 Bytes

Contents

require_relative './node'

module Dentaku
  module AST
    class Operation < Node
      attr_reader :left, :right

      def self.min_param_count
        arity
      end

      def self.max_param_count
        arity
      end

      def initialize(left, right)
        @left  = left
        @right = right
      end

      def dependencies(context = {})
        (left.dependencies(context) + right.dependencies(context)).uniq
      end

      def self.right_associative?
        false
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
dentaku-3.4.2 lib/dentaku/ast/operation.rb
dentaku-3.4.1 lib/dentaku/ast/operation.rb
dentaku-3.4.0 lib/dentaku/ast/operation.rb
dentaku-3.3.4 lib/dentaku/ast/operation.rb
dentaku-3.3.3 lib/dentaku/ast/operation.rb