Fix a bunch of cases where module types were not marked as final.

This commit is contained in:
Sadie Powell 2021-11-28 21:42:52 +00:00
parent bd517c7e44
commit 35c6ac48c9
17 changed files with 41 additions and 30 deletions

View File

@ -26,7 +26,7 @@
#include "inspircd.h"
struct LusersCounters
struct LusersCounters final
{
size_t max_local;
size_t max_global;

View File

@ -77,7 +77,7 @@ class DataKeeper final
{
/** Data we save for each mode and extension provided by the module
*/
struct ProviderInfo
struct ProviderInfo final
{
std::string itemname;
union
@ -106,7 +106,7 @@ class DataKeeper final
}
};
struct InstanceData
struct InstanceData final
{
/** Position of the ModeHandler or ExtensionItem that the serialized data belongs to
*/
@ -142,7 +142,8 @@ class DataKeeper final
}
};
struct OwnedModesExts : public ModesExts
struct OwnedModesExts
: public ModesExts
{
/** User uuid or channel name
*/
@ -155,7 +156,8 @@ class DataKeeper final
};
// Data saved for each channel
struct ChanData : public OwnedModesExts
struct ChanData final
: public OwnedModesExts
{
/** Type of data stored for each member who has any affected modes or extensions set
*/
@ -172,7 +174,8 @@ class DataKeeper final
};
// Data saved for each user
struct UserData : public OwnedModesExts
struct UserData final
: public OwnedModesExts
{
static const size_t UNUSED_INDEX = SIZE_MAX;
size_t serializerindex;

View File

@ -44,7 +44,8 @@ enum
static const char whox_field_order[] = "tcuihsnfdlaor";
static const char who_field_order[] = "cuhsnf";
struct WhoData : public Who::Request
struct WhoData final
: public Who::Request
{
bool GetFieldIndex(char flag, size_t& out) const override
{

View File

@ -41,7 +41,7 @@ enum
namespace WhoWas
{
/** One entry for a nick. There may be multiple entries for a nick. */
struct Entry
struct Entry final
{
/** Real host */
const std::string host;
@ -66,7 +66,8 @@ namespace WhoWas
};
/** Everything known about one nick */
struct Nick : public insp::intrusive_list_node<Nick>
struct Nick final
: public insp::intrusive_list_node<Nick>
{
/** A group of users related by nickname */
typedef std::deque<Entry*> List;
@ -90,7 +91,7 @@ namespace WhoWas
class Manager final
{
public:
struct Stats
struct Stats final
{
/** Number of currently existing WhoWas::Entry objects */
size_t entrycount;

View File

@ -46,7 +46,8 @@
class SQLConn;
typedef insp::flat_map<std::string, SQLConn*> ConnMap;
class SQLite3Result : public SQL::Result
class SQLite3Result final
: public SQL::Result
{
public:
int currentrow = 0;

View File

@ -162,7 +162,7 @@ namespace GnuTLS
const gnutls_dh_params_t& get() const { return dh_params; }
};
class X509Key
class X509Key final
{
/** Ensure that the key is deinited in case the constructor of X509Key throws
*/
@ -193,7 +193,7 @@ namespace GnuTLS
gnutls_x509_privkey_t& get() { return key.key; }
};
class X509CertList
class X509CertList final
{
std::vector<gnutls_x509_crt_t> certs;
@ -231,7 +231,7 @@ namespace GnuTLS
size_t size() const { return certs.size(); }
};
class X509CRL
class X509CRL final
{
class RAIICRL final
{
@ -361,7 +361,8 @@ namespace GnuTLS
}
};
class X509Credentials : public CertCredentials
class X509Credentials final
: public CertCredentials
{
/** Private key
*/

View File

@ -127,7 +127,8 @@ namespace mbedTLS
}
};
class X509Key : public RAIIObj<mbedtls_pk_context, mbedtls_pk_init, mbedtls_pk_free>
class X509Key final
: public RAIIObj<mbedtls_pk_context, mbedtls_pk_init, mbedtls_pk_free>
{
public:
/** Import */
@ -194,7 +195,8 @@ namespace mbedTLS
bool empty() const { return (list.size() <= 1); }
};
class X509CertList : public RAIIObj<mbedtls_x509_crt, mbedtls_x509_crt_init, mbedtls_x509_crt_free>
class X509CertList final
: public RAIIObj<mbedtls_x509_crt, mbedtls_x509_crt_init, mbedtls_x509_crt_free>
{
public:
/** Import or create empty */
@ -209,7 +211,8 @@ namespace mbedTLS
bool empty() const { return (get()->raw.p != NULL); }
};
class X509CRL : public RAIIObj<mbedtls_x509_crl, mbedtls_x509_crl_init, mbedtls_x509_crl_free>
class X509CRL final
: public RAIIObj<mbedtls_x509_crl, mbedtls_x509_crl_init, mbedtls_x509_crl_free>
{
public:
X509CRL(const std::string& crlstr)
@ -221,7 +224,7 @@ namespace mbedTLS
}
};
class X509Credentials
class X509Credentials final
{
/** Private key
*/

View File

@ -43,7 +43,7 @@ enum
RPL_UMODEGMSG = 718
};
class callerid_data
class callerid_data final
{
public:
typedef insp::flat_set<User*> UserSet;

View File

@ -113,7 +113,7 @@ class JoinHook final
}
};
class ModuleIRCv3
class ModuleIRCv3 final
: public Module
, public AccountEventListener
, public Away::EventListener

View File

@ -39,7 +39,7 @@ class BatchMessage final
/** Extra structure allocated only for running batches, containing objects only relevant for
* that specific run of the batch.
*/
struct IRCv3::Batch::BatchInfo
struct IRCv3::Batch::BatchInfo final
{
/** List of users that have received the batch start message
*/
@ -58,7 +58,8 @@ struct IRCv3::Batch::BatchInfo
}
};
class IRCv3::Batch::ManagerImpl final : public Manager
class IRCv3::Batch::ManagerImpl final
: public Manager
{
typedef std::vector<Batch*> BatchList;

View File

@ -304,7 +304,7 @@ class C2CTags final
}
};
class ModuleIRCv3CTCTags
class ModuleIRCv3CTCTags final
: public Module
, public CTCTags::EventListener
, public ISupport::EventListener

View File

@ -23,7 +23,7 @@
#include "modules/cap.h"
#include "modules/ctctags.h"
class ModuleIRCv3EchoMessage
class ModuleIRCv3EchoMessage final
: public Module
, public CTCTags::EventListener
{

View File

@ -36,7 +36,7 @@ namespace
std::vector<std::pair<std::string, std::string> > requiredattributes;
}
class BindInterface
class BindInterface final
: public LDAPInterface
{
const std::string provider;

View File

@ -42,7 +42,7 @@ typedef unsigned char byte;
/** An MD5 context, used by m_opermd5
*/
class MD5Context
class MD5Context final
{
public:
word32 buf[4];

View File

@ -51,7 +51,7 @@ struct IRCv3::Monitor::Entry final
const std::string& GetNick() const { return nick; }
};
class IRCv3::Monitor::Manager
class IRCv3::Monitor::Manager final
{
struct ExtData final
{

View File

@ -27,7 +27,7 @@
// Iterations:B64(Hash):B64(Salt)
// E.g.
// 10200:AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
class PBKDF2Hash
class PBKDF2Hash final
{
public:
unsigned long iterations;

View File

@ -58,7 +58,7 @@ static const uint32_t sha1_iv[5] =
0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0
};
class SHA1Context
class SHA1Context final
{
uint32_t state[5];
uint32_t count[2];