summaryrefslogtreecommitdiff
path: root/include/users.h
diff options
context:
space:
mode:
authorAttila Molnar <attilamolnar@hush.com>2016-02-25 16:12:09 +0100
committerAttila Molnar <attilamolnar@hush.com>2016-02-25 16:12:09 +0100
commitda29af8cba49d51e53d6e68237ccbf6370b6dd1f (patch)
tree5546764f28ff9457efa3a0f90ae6778953590293 /include/users.h
parent28dcc1f9e017152f03b0d9bfbcc494260b015a0a (diff)
Convert WriteNumeric() calls to pass the parameters of the numeric as method parameters
Diffstat (limited to 'include/users.h')
-rw-r--r--include/users.h53
1 files changed, 51 insertions, 2 deletions
diff --git a/include/users.h b/include/users.h
index fa346a329..8aa88798c 100644
--- a/include/users.h
+++ b/include/users.h
@@ -519,9 +519,58 @@ class CoreExport User : public Extensible
*/
void WriteNotice(const std::string& text) { this->WriteCommand("NOTICE", ":" + text); }
- void WriteNumeric(unsigned int numeric, const char* text, ...) CUSTOM_PRINTF(3, 4);
- void WriteNumeric(unsigned int numeric, const std::string &text);
+ void WriteNumeric(const Numeric::Numeric& numeric);
+
+ template <typename T1>
+ void WriteNumeric(unsigned int numeric, T1 p1)
+ {
+ Numeric::Numeric n(numeric);
+ n.push(p1);
+ WriteNumeric(n);
+ }
+
+ template <typename T1, typename T2>
+ void WriteNumeric(unsigned int numeric, T1 p1, T2 p2)
+ {
+ Numeric::Numeric n(numeric);
+ n.push(p1);
+ n.push(p2);
+ WriteNumeric(n);
+ }
+
+ template <typename T1, typename T2, typename T3>
+ void WriteNumeric(unsigned int numeric, T1 p1, T2 p2, T3 p3)
+ {
+ Numeric::Numeric n(numeric);
+ n.push(p1);
+ n.push(p2);
+ n.push(p3);
+ WriteNumeric(n);
+ }
+
+ template <typename T1, typename T2, typename T3, typename T4>
+ void WriteNumeric(unsigned int numeric, T1 p1, T2 p2, T3 p3, T4 p4)
+ {
+ Numeric::Numeric n(numeric);
+ n.push(p1);
+ n.push(p2);
+ n.push(p3);
+ n.push(p4);
+ WriteNumeric(n);
+ }
+
+ template <typename T1, typename T2, typename T3, typename T4, typename T5>
+ void WriteNumeric(unsigned int numeric, T1 p1, T2 p2, T3 p3, T4 p4, T5 p5)
+ {
+ Numeric::Numeric n(numeric);
+ n.push(p1);
+ n.push(p2);
+ n.push(p3);
+ n.push(p4);
+ n.push(p5);
+ WriteNumeric(n);
+ }
/** Write text to this user, appending CR/LF and prepending :nick!user\@host of the user provided in the first parameter.
* @param user The user to prepend the :nick!user\@host of