X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fnetwork.h;h=5ad42e9f1a3ffec70ca32775c57b79cfbf14d5a6;hp=a56b0935b25e85780fa927a316ac174bb4411079;hb=b2c3e61e5888741644b24f5b3701a6311ec631dd;hpb=0b983b0d9364e62db0b5e6cf25988ef8041a0c5d diff --git a/src/common/network.h b/src/common/network.h index a56b0935..5ad42e9f 100644 --- a/src/common/network.h +++ b/src/common/network.h @@ -263,6 +263,19 @@ public : bool supports(const QString ¶m) const { return _supports.contains(param); } QString support(const QString ¶m) const; + /** + * Checks if a given capability is advertised by the server. + * + * These results aren't valid if the network is disconnected or capability negotiation hasn't + * happened, and some servers might not correctly advertise capabilities. Don't treat this as + * a guarentee. + * + * @param[in] capability Name of capability + * @returns True if connected and advertised by the server, otherwise false + */ + inline bool capAvailable(const QString &capability) const { return _caps.contains(capability.toLower()); } + // IRCv3 specs all use lowercase capability names + /** * Checks if a given capability is acknowledged and active. *