From 5edc7638edc4e4a168f1b25532300913b78fd1e9 Mon Sep 17 00:00:00 2001 From: quentin Date: Tue, 13 Sep 2022 15:11:12 -0500 Subject: [PATCH] dateMoney getters and << operator --- src/data/dateMoney.cpp | 16 +++++++++++++++- src/data/dateMoney.h | 9 ++++++++- src/money/account.h | 3 +-- 3 files changed, 24 insertions(+), 4 deletions(-) diff --git a/src/data/dateMoney.cpp b/src/data/dateMoney.cpp index c67432c..a085943 100644 --- a/src/data/dateMoney.cpp +++ b/src/data/dateMoney.cpp @@ -5,6 +5,8 @@ #include "dateMoney.h" +DateMoney::DateMoney(const int *value, tm *date) : value(value), date(date) {} + bool DateMoney::operator<(const DateMoney &rhs) const { return mktime(date) < mktime(rhs.date); } @@ -21,4 +23,16 @@ bool DateMoney::operator>=(const DateMoney &rhs) const { return !(*this < rhs); } -DateMoney::DateMoney(const int *value, tm *date) : value(value), date(date) {} +std::ostream &operator<<(std::ostream &os, const DateMoney &money) { + os << "value: " << *money.value << " date: " << money.date->tm_mon + 1 << "/" << money.date->tm_mday << "/" + << money.date->tm_year; + return os; +} + +const int *DateMoney::getValue() const { + return value; +} + +tm *DateMoney::getDate() const { + return date; +} diff --git a/src/data/dateMoney.h b/src/data/dateMoney.h index 1f79dda..bf07bdf 100644 --- a/src/data/dateMoney.h +++ b/src/data/dateMoney.h @@ -7,9 +7,16 @@ #include +#include class DateMoney { public: + DateMoney(const int *value, tm *date); + + [[nodiscard]] const int *getValue() const; + + [[nodiscard]] tm *getDate() const; + bool operator<(const DateMoney &rhs) const; bool operator>(const DateMoney &rhs) const; @@ -18,7 +25,7 @@ public: bool operator>=(const DateMoney &rhs) const; - DateMoney(const int *value, tm *date); + friend std::ostream &operator<<(std::ostream &os, const DateMoney &money); private: const int *value; diff --git a/src/money/account.h b/src/money/account.h index a9986cf..437dd12 100644 --- a/src/money/account.h +++ b/src/money/account.h @@ -23,8 +23,7 @@ public: std::vector getTimeline(); - const std::string &getName() const; - + [[nodiscard]] const std::string &getName() const; private: std::list transactions;