Code cleanup
This commit is contained in:
parent
ea057e7401
commit
c036cc43dd
@ -3,5 +3,23 @@ project(budget)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 20)
|
||||
|
||||
add_executable(${PROJECT_NAME} src/main.cpp
|
||||
src/optHandlers/mainOptHandler.h src/optHandlers/mainOptHandler.cpp src/optHandlers/operation.cpp src/optHandlers/operation.h src/optHandlers/accountOperation.cpp src/optHandlers/accountOperation.h src/optHandlers/createOperation.cpp src/optHandlers/createOperation.h src/optHandlers/earnOperation.cpp src/optHandlers/earnOperation.h src/optHandlers/PaymentOperation.cpp src/optHandlers/PaymentOperation.h)
|
||||
set(SOURCES
|
||||
src/main.cpp
|
||||
src/optHandlers/mainOptHandler.cpp
|
||||
src/optHandlers/operation.cpp
|
||||
src/optHandlers/accountOperation.cpp
|
||||
src/optHandlers/createOperation.cpp
|
||||
src/optHandlers/earnOperation.cpp
|
||||
src/optHandlers/PaymentOperation.cpp
|
||||
)
|
||||
|
||||
set(HEADERS
|
||||
src/optHandlers/mainOptHandler.h
|
||||
src/optHandlers/operation.h
|
||||
src/optHandlers/accountOperation.h
|
||||
src/optHandlers/createOperation.h
|
||||
src/optHandlers/earnOperation.h
|
||||
src/optHandlers/PaymentOperation.h
|
||||
)
|
||||
|
||||
add_executable(${PROJECT_NAME} ${SOURCES} ${HEADERS})
|
@ -1,4 +1,5 @@
|
||||
Output of budget.
|
||||
|
||||
```
|
||||
Usage:
|
||||
budget <action> [options] ...
|
||||
@ -28,9 +29,11 @@ Payment Options: -v [-drD]
|
||||
```
|
||||
|
||||
Arguments are processed like blocks with each one terminated by the next Action. For example
|
||||
|
||||
```
|
||||
budget -cAcct -eAcct -v10.00 -r"./receipt.pdf" -pAcct -v5.50 -r"./payment.pdf"
|
||||
````
|
||||
|
||||
Does the following in order:
|
||||
Creates an account named Acct with no description.
|
||||
Earns 10.00 to it with a receipt.
|
||||
|
@ -11,7 +11,7 @@
|
||||
#include "operation.h"
|
||||
|
||||
namespace Budget::OptHandlers {
|
||||
class PaymentOperation : public Operation{
|
||||
class PaymentOperation : public Operation {
|
||||
public:
|
||||
void commit() override;
|
||||
|
||||
|
@ -9,7 +9,7 @@
|
||||
#include "operation.h"
|
||||
|
||||
namespace Budget::OptHandlers {
|
||||
class CreateOperation : public Operation{
|
||||
class CreateOperation : public Operation {
|
||||
public:
|
||||
void commit() override;
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
#include <ctime>
|
||||
|
||||
namespace Budget::OptHandlers {
|
||||
class EarnOperation : public Operation{
|
||||
class EarnOperation : public Operation {
|
||||
public:
|
||||
void commit() override;
|
||||
|
||||
|
@ -12,12 +12,12 @@
|
||||
|
||||
using namespace Budget::OptHandlers;
|
||||
|
||||
MainOptHandler::MainOptHandler(const std::vector<char *> &_argv) : argv(_argv){
|
||||
MainOptHandler::MainOptHandler(const std::vector<char *> &_argv) : argv(_argv) {
|
||||
struct option actionLongOpts[] = {
|
||||
{"help", no_argument, nullptr, 'h'},
|
||||
{"account", required_argument, nullptr, 'a'},
|
||||
{"create", required_argument, nullptr, 'c'},
|
||||
{"earn", required_argument, nullptr, 'e'},
|
||||
{"create", required_argument, nullptr, 'c'},
|
||||
{"earn", required_argument, nullptr, 'e'},
|
||||
{"payment", required_argument, nullptr, 'p'}
|
||||
};
|
||||
|
||||
@ -53,16 +53,16 @@ MainOptHandler::MainOptHandler(const std::vector<char *> &_argv) : argv(_argv){
|
||||
|
||||
void MainOptHandler::accountOptHandler(std::string account) {
|
||||
struct option accountLongOpts[] = {
|
||||
{"help", no_argument, nullptr, 'h'},
|
||||
{"account", required_argument, nullptr, 'a'},
|
||||
{"create", required_argument, nullptr, 'c'},
|
||||
{"earn", required_argument, nullptr, 'e'},
|
||||
{"payment", required_argument, nullptr, 'p'},
|
||||
{"help", no_argument, nullptr, 'h'},
|
||||
{"account", required_argument, nullptr, 'a'},
|
||||
{"create", required_argument, nullptr, 'c'},
|
||||
{"earn", required_argument, nullptr, 'e'},
|
||||
{"payment", required_argument, nullptr, 'p'},
|
||||
|
||||
{"delete", no_argument, nullptr, 'd'},
|
||||
{"force-delete", no_argument, nullptr, 'F'},
|
||||
{"value", no_argument, nullptr, 'v'},
|
||||
{"description", no_argument, nullptr, 'D'},
|
||||
{"delete", no_argument, nullptr, 'd'},
|
||||
{"force-delete", no_argument, nullptr, 'F'},
|
||||
{"value", no_argument, nullptr, 'v'},
|
||||
{"description", no_argument, nullptr, 'D'},
|
||||
};
|
||||
|
||||
auto acctOperation = std::make_unique<AccountOperation>();
|
||||
@ -108,11 +108,11 @@ void MainOptHandler::accountOptHandler(std::string account) {
|
||||
|
||||
void MainOptHandler::createOptHandler(std::string account) {
|
||||
struct option createLongOpts[] = {
|
||||
{"help", no_argument, nullptr, 'h'},
|
||||
{"account", required_argument, nullptr, 'a'},
|
||||
{"create", required_argument, nullptr, 'c'},
|
||||
{"earn", required_argument, nullptr, 'e'},
|
||||
{"payment", required_argument, nullptr, 'p'},
|
||||
{"help", no_argument, nullptr, 'h'},
|
||||
{"account", required_argument, nullptr, 'a'},
|
||||
{"create", required_argument, nullptr, 'c'},
|
||||
{"earn", required_argument, nullptr, 'e'},
|
||||
{"payment", required_argument, nullptr, 'p'},
|
||||
|
||||
{"description", required_argument, nullptr, 'd'},
|
||||
};
|
||||
@ -150,11 +150,11 @@ void MainOptHandler::createOptHandler(std::string account) {
|
||||
|
||||
void MainOptHandler::earnOptHandler(std::string account) {
|
||||
struct option earnLongOpts[] = {
|
||||
{"help", no_argument, nullptr, 'h'},
|
||||
{"account", required_argument, nullptr, 'a'},
|
||||
{"create", required_argument, nullptr, 'c'},
|
||||
{"earn", required_argument, nullptr, 'e'},
|
||||
{"payment", required_argument, nullptr, 'p'},
|
||||
{"help", no_argument, nullptr, 'h'},
|
||||
{"account", required_argument, nullptr, 'a'},
|
||||
{"create", required_argument, nullptr, 'c'},
|
||||
{"earn", required_argument, nullptr, 'e'},
|
||||
{"payment", required_argument, nullptr, 'p'},
|
||||
|
||||
{"value", required_argument, nullptr, 'v'},
|
||||
{"description", required_argument, nullptr, 'd'},
|
||||
@ -221,11 +221,11 @@ void MainOptHandler::earnOptHandler(std::string account) {
|
||||
|
||||
void MainOptHandler::paymentOptHandler(std::string account) {
|
||||
struct option paymentLongOpts[] = {
|
||||
{"help", no_argument, nullptr, 'h'},
|
||||
{"account", required_argument, nullptr, 'a'},
|
||||
{"create", required_argument, nullptr, 'c'},
|
||||
{"earn", required_argument, nullptr, 'e'},
|
||||
{"payment", required_argument, nullptr, 'p'},
|
||||
{"help", no_argument, nullptr, 'h'},
|
||||
{"account", required_argument, nullptr, 'a'},
|
||||
{"create", required_argument, nullptr, 'c'},
|
||||
{"earn", required_argument, nullptr, 'e'},
|
||||
{"payment", required_argument, nullptr, 'p'},
|
||||
|
||||
{"value", required_argument, nullptr, 'v'},
|
||||
{"description", required_argument, nullptr, 'd'},
|
||||
|
@ -11,24 +11,25 @@
|
||||
#include <memory>
|
||||
#include "operation.h"
|
||||
|
||||
namespace Budget::OptHandlers{
|
||||
class MainOptHandler {
|
||||
namespace Budget::OptHandlers {
|
||||
class MainOptHandler {
|
||||
public:
|
||||
explicit MainOptHandler(const std::vector<char *> &argv);
|
||||
|
||||
void help();
|
||||
|
||||
std::queue<std::unique_ptr<Operation>> operations;
|
||||
|
||||
|
||||
private:
|
||||
void accountOptHandler(std::string account);
|
||||
|
||||
|
||||
void createOptHandler(std::string account);
|
||||
|
||||
|
||||
void earnOptHandler(std::string account);
|
||||
|
||||
|
||||
void paymentOptHandler(std::string account);
|
||||
const std::vector<char*> &argv;
|
||||
|
||||
const std::vector<char *> &argv;
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -9,6 +9,7 @@ namespace Budget::OptHandlers {
|
||||
class Operation {
|
||||
public:
|
||||
virtual void commit() = 0;
|
||||
|
||||
struct Flags {
|
||||
};
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user