Skip to content

Commit e438e15

Browse files
authored
Move C++ virtual destructor definition to .cpp files (#21529) (#21530)
* Move C++ virtual destructor definition to .cpp files (#21529) * Subsequent commit with codegened C++ - PR step 3 (#21529)
1 parent 27cced5 commit e438e15

158 files changed

Lines changed: 274 additions & 111 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

modules/openapi-generator/src/main/resources/cpp-pistache-server/model-header.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ class {{declspec}} {{classname}}
2323
{
2424
public:
2525
{{classname}}();
26-
virtual ~{{classname}}() = default;
26+
virtual ~{{classname}}();
2727
{{#isEnum}}{{#allowableValues}}
2828
enum class e{{classname}} {
2929
// To have a valid default value.

modules/openapi-generator/src/main/resources/cpp-pistache-server/model-source.mustache

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ namespace {{modelNamespace}}
1818
{{/required}}{{/vars}}
1919
}
2020

21+
{{classname}}::~{{classname}}() = default;
22+
2123
void {{classname}}::validate() const
2224
{
2325
std::stringstream msg;

modules/openapi-generator/src/main/resources/cpp-restbed-server-deprecated/model-header.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ class {{declspec}} {{classname}} {{#interfaces}}{{#-first}}:{{/-first}}{{^-first
3434
public:
3535
{{classname}}() = default;
3636
explicit {{classname}}(boost::property_tree::ptree const& pt);
37-
virtual ~{{classname}}() = default;
37+
virtual ~{{classname}}();
3838

3939
std::string toJsonString(bool prettyJson = false);
4040
void fromJsonString(std::string const& jsonString);

modules/openapi-generator/src/main/resources/cpp-restbed-server-deprecated/model-source.mustache

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ namespace {{this}} {
2626
fromPropertyTree(pt);
2727
}
2828

29+
{{classname}}::~{{classname}}() = default;
30+
2931
std::string {{classname}}::toJsonString(bool prettyJson /* = false */)
3032
{
3133
return toJsonString_internal(prettyJson);

modules/openapi-generator/src/main/resources/cpp-restbed-server/api-header.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ class {{declspec}} {{vendorExtensions.x-codegen-resource-name}}Resource: public
5757
{
5858
public:
5959
{{vendorExtensions.x-codegen-resource-name}}Resource(const std::string& context = "{{contextPath}}");
60-
virtual ~{{vendorExtensions.x-codegen-resource-name}}Resource() = default;
60+
virtual ~{{vendorExtensions.x-codegen-resource-name}}Resource();
6161

6262
{{vendorExtensions.x-codegen-resource-name}}Resource(
6363
const {{vendorExtensions.x-codegen-resource-name}}Resource& other) = default; // copy constructor

modules/openapi-generator/src/main/resources/cpp-restbed-server/api-source.mustache

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,8 @@ namespace {{classname}}Resources {
117117
{{/vendorExtensions.x-codegen-other-methods}}
118118
}
119119

120+
{{vendorExtensions.x-codegen-resource-name}}Resource::~{{vendorExtensions.x-codegen-resource-name}}Resource() = default;
121+
120122
std::pair<int, std::string> {{vendorExtensions.x-codegen-resource-name}}Resource::handle{{classname}}Exception(const {{classname}}Exception& e)
121123
{
122124
return std::make_pair<int, std::string>(e.getStatus(), e.what());

modules/openapi-generator/src/main/resources/cpp-restbed-server/model-header.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ class {{declspec}} {{classname}} {{#interfaces}}{{#-first}}:{{/-first}}{{^-first
3838
public:
3939
{{classname}}() = default;
4040
explicit {{classname}}(boost::property_tree::ptree const& pt);
41-
virtual ~{{classname}}() = default;
41+
virtual ~{{classname}}();
4242

4343
{{classname}}(const {{classname}}& other) = default; // copy constructor
4444
{{classname}}({{classname}}&& other) noexcept = default; // move constructor

modules/openapi-generator/src/main/resources/cpp-restbed-server/model-source.mustache

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ namespace {{this}} {
3030
fromPropertyTree(pt);
3131
}
3232

33+
{{classname}}::~{{classname}} = default;
3334

3435
std::string {{classname}}::toJsonString(bool prettyJson /* = false */) const
3536
{

modules/openapi-generator/src/main/resources/cpp-tiny/service/api-header.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public:
2626
{{classname}}() = default;
2727

2828
{{! Destructor }}
29-
virtual ~{{classname}}() = default;
29+
virtual ~{{classname}}();
3030

3131
{{! Service endpoint }}
3232
{{#operation}}

samples/client/petstore/cpp-tiny/lib/service/PetApi.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ class PetApi : public Service {
2222
public:
2323
PetApi() = default;
2424

25-
virtual ~PetApi() = default;
25+
virtual ~PetApi();
2626

2727
/**
2828
* Add a new pet to the store.

0 commit comments

Comments
 (0)