Class: Xirr::Transaction

Inherits:
Object
  • Object
show all
Defined in:
lib/xirr/transaction.rb

Overview

A unit of the Cashflow.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(amount, opts = {}) ⇒ Transaction

Returns a new instance of Transaction.

Examples:

Transaction.new(-1000, date: Date.new(2013, 1, 1))

Parameters:

  • amount (Numeric)
  • opts (Hash) (defaults to: {})

    must include :date, the date the amount falls on



12
13
14
15
# File 'lib/xirr/transaction.rb', line 12

def initialize(amount, opts = {})
  self.amount = amount
  opts.each { |key, value| send("#{key}=", value) }
end

Instance Attribute Details

#amountObject

Returns the value of attribute amount.



6
7
8
# File 'lib/xirr/transaction.rb', line 6

def amount
  @amount
end

#dateObject

Returns the value of attribute date.



6
7
8
# File 'lib/xirr/transaction.rb', line 6

def date
  @date
end

Instance Method Details

#inspectString

Returns:

  • (String)


32
33
34
# File 'lib/xirr/transaction.rb', line 32

def inspect
  "T(#{@amount},#{@date})"
end