From 82644c4c00f4f4b51dd25dd2b2e722cf7ff4d6b6 Mon Sep 17 00:00:00 2001 From: JoelKatz Date: Sun, 22 Apr 2012 16:28:24 -0700 Subject: [PATCH] Additional error codes. "No param" parameter for TransactionEngineParms. TEP helper functions. --- src/TransactionEngine.h | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/TransactionEngine.h b/src/TransactionEngine.h index fc8774e53a..80fd3c0ec8 100644 --- a/src/TransactionEngine.h +++ b/src/TransactionEngine.h @@ -19,8 +19,10 @@ enum TransactionEngineResult terSUCCESS = 0, // The transaction was applied terALREADY, // The transaction was already in the ledger terNO_ACCOUNT, // The source account does not exist + terNO_TARGET, // The destination does not exist terINSUF_FEE_T, // fee insufficient now (account doesn't exist, network load) - terUNFUNDED, // Source account had insufficient balance + terINSUF_FEE_B, // Account balance can't pay fee + terUNFUNDED, // Source account had insufficient balance for transactin terNO_PATH, // No path existed or met transaction/balance requirements terPAST_SEQ, // This sequence number has already past terPRE_SEQ, // Missing/inapplicable prior transaction @@ -29,6 +31,7 @@ enum TransactionEngineResult enum TransactionEngineParams { + tepNONE = 0, tepNO_CHECK_SIGN = 1, // Signature already checked tepNO_CHECK_FEE = 2, // It was voted into a ledger anyway }; @@ -56,4 +59,14 @@ public: TransactionEngineResult applyTransaction(const SerializedTransaction&, TransactionEngineParams); }; +inline TransactionEngineParams operator|(const TransactionEngineParams& l1, const TransactionEngineParams& l2) +{ + return static_cast(static_cast(l1) | static_cast(l2)); +} + +inline TransactionEngineParams operator&(const TransactionEngineParams& l1, const TransactionEngineParams& l2) +{ + return static_cast(static_cast(l1) & static_cast(l2)); +} + #endif