Mark Client, Window, Buffer and OptionManager as final

Avoids warning about non virtual destructor calls on them,
as they have a vtable due to OptionManagerWatcher.
This commit is contained in:
Maxime Coste 2018-05-08 22:07:43 +10:00
parent e8c648b7b7
commit 327d8ad759
4 changed files with 4 additions and 4 deletions

View File

@ -103,7 +103,7 @@ using BufferLines = Vector<StringDataPtr, MemoryDomain::BufferContent>;
// The Buffer class permits to read and mutate this file
// representation. It also manage modifications undo/redo and
// provides tools to deal with the line/column nature of text.
class Buffer : public SafeCountable, public OptionManagerWatcher, public Scope
class Buffer final : public SafeCountable, public Scope, private OptionManagerWatcher
{
public:
enum class Flags

View File

@ -22,7 +22,7 @@ enum class EventMode;
enum class InfoStyle;
enum class MenuStyle;
class Client : public SafeCountable, public OptionManagerWatcher
class Client final : public SafeCountable, public OptionManagerWatcher
{
public:
using OnExitCallback = std::function<void (int status)>;

View File

@ -78,7 +78,7 @@ public:
virtual void on_option_changed(const Option& option) = 0;
};
class OptionManager : private OptionManagerWatcher
class OptionManager final : private OptionManagerWatcher
{
public:
OptionManager(OptionManager& parent);

View File

@ -13,7 +13,7 @@ namespace Kakoune
{
// A Window is a view onto a Buffer
class Window : public SafeCountable, public OptionManagerWatcher, public Scope
class Window final : public SafeCountable, public Scope, private OptionManagerWatcher
{
public:
Window(Buffer& buffer);