Skip to content

Commit 264605f

Browse files
committed
Correct OO hierarchy (virtual dtors)
1 parent 3e50466 commit 264605f

File tree

9 files changed

+13
-8
lines changed

9 files changed

+13
-8
lines changed

include/queryosity/column.h

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,11 @@ namespace queryosity {
1313
*/
1414
namespace column {
1515

16-
class node : public action {};
16+
class node : public action {
17+
public:
18+
node() = default;
19+
virtual ~node() = default;
20+
};
1721

1822
//---------------------------------------------------
1923
// view can actually report on the concrete data type

include/queryosity/column_evaluator.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ template <typename T> class column::evaluator {
1515

1616
public:
1717
template <typename... Args> evaluator(Args const &...args);
18-
~evaluator() = default;
18+
virtual ~evaluator() = default;
1919

2020
template <typename... Vals>
2121
std::unique_ptr<T> evaluate(view<Vals> const &...cols) const;

include/queryosity/dataset_processor.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ namespace dataset {
1111
class processor : public multithread::core, public ensemble::slotted<player> {
1212
public:
1313
processor(int suggestion);
14-
~processor() = default;
14+
virtual ~processor() = default;
1515

1616
processor(const processor &) = delete;
1717
processor &operator=(const processor &) = delete;

include/queryosity/lazy_varied.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ class lazy<Act>::varied : public dataflow::node,
2929

3030
public:
3131
varied(lazy<Act> nom);
32-
~varied() = default;
32+
virtual ~varied() = default;
3333

3434
varied(varied const &) = default;
3535
varied &operator=(varied const &) = default;

include/queryosity/multithread.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ class core {
5454
core(const core &) = default;
5555
core &operator=(const core &) = default;
5656

57-
~core() = default;
57+
virtual ~core() = default;
5858

5959
/**
6060
* @brief Run the function on the underlying slots, multi-threading if

include/queryosity/query_output.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ template <typename Qry> class output {
2626
* @param args Constructor arguments.
2727
*/
2828
template <typename... Args> output(Args const &...args);
29+
~output() = default;
2930

3031
auto make(dataflow &df) const;
3132

include/queryosity/selection_applicator.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ class selection::applicator : public column::evaluator<Def> {
1717

1818
public:
1919
template <typename... Args> applicator(selection::node const *prev, Args const &...args);
20-
~applicator() = default;
20+
virtual ~applicator() = default;
2121

2222
template <typename... Vals>
2323
std::pair<std::unique_ptr<Sel>, std::unique_ptr<Def>>

include/queryosity/systematic_nominal.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ template <typename Lzy> class nominal {
1212

1313
public:
1414
nominal(Lzy const &nom);
15-
virtual ~nominal() = default;
15+
~nominal() = default;
1616

1717
auto get() const -> Lzy const &;
1818

include/queryosity/systematic_variation.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ template <typename Lazy> class systematic::variation {
1414

1515
public:
1616
variation(const std::string &name, Lazy const &var);
17-
virtual ~variation() = default;
17+
~variation() = default;
1818

1919
auto name() const -> std::string;
2020
auto get() const -> Lazy const &;

0 commit comments

Comments
 (0)