Sha256: 72d078214ec73ed9bea697eef8c24bc091b71f39a53cdeddfc910741dc1bfba2

Contents?: true

Size: 978 Bytes

Versions: 3

Compression:

Stored size: 978 Bytes

Contents

module Danica
  class Operator
    include Common
    include VariablesHolder
    include BaseOperations
    include ActiveModel::Model

    default_value :priority, 3
    default_value :is_grouped?, false
  
    def initialize(*args)
      super( variables: args.flatten )
    end

    def ==(other)
      return false unless other.class == self.class
      variables == other.variables
    end

    autoload :Functional,     'danica/operator/functional'
    autoload :Chained,        'danica/operator/chained'
    autoload :Multiplication, 'danica/operator/multiplication'
    autoload :Addition,       'danica/operator/addition'
    autoload :Division,       'danica/operator/division'
    autoload :Power,          'danica/operator/power'
    autoload :Cos,            'danica/operator/cos'
    autoload :Sin,            'danica/operator/sin'
    autoload :SquaredRoot,    'danica/operator/squared_root'
    autoload :Exponential,    'danica/operator/exponential'
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
danica-2.4.0 lib/danica/operator.rb
danica-2.3.1 lib/danica/operator.rb
danica-2.3.0 lib/danica/operator.rb