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 // The Buffer class permits to read and mutate this file
// representation. It also manage modifications undo/redo and // representation. It also manage modifications undo/redo and
// provides tools to deal with the line/column nature of text. // 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: public:
enum class Flags enum class Flags

View File

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

View File

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

View File

@ -13,7 +13,7 @@ namespace Kakoune
{ {
// A Window is a view onto a Buffer // 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: public:
Window(Buffer& buffer); Window(Buffer& buffer);