From e5e4bba62f36d16cfad129a2502566fcdbec56a1 Mon Sep 17 00:00:00 2001 From: NickPak Date: Thu, 17 Dec 2020 14:51:30 +0800 Subject: [PATCH 1/2] [C][Client] Add cpp reserved keywords to C-libcurl client generator --- .../languages/CLibcurlClientCodegen.java | 106 +++++++++++++++++- 1 file changed, 105 insertions(+), 1 deletion(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CLibcurlClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CLibcurlClientCodegen.java index f64d2d99d3fa..dbc59ae281cc 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CLibcurlClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CLibcurlClientCodegen.java @@ -143,7 +143,111 @@ public CLibcurlClientCodegen() { "_Imaginary", "_Noreturn", "_Static_assert", - "_Thread_local") + "_Thread_local", + + // cpp reserved keywords + // ref: https://en.cppreference.com/w/cpp/keyword + "alignas", + "alignof", + "and", + "and_eq", + "asm", + "atomic_cancel", + "atomic_commit", + "atomic_noexcept", + //"auto", + "bitand", + "bitor", + "bool", + //"break", + //"case", + "catch", + //"char", + "char8_t", + "char16_t", + "char32_t", + "class", + "compl", + "concept", + //"const", + "consteval", + "constexpr", + "constinit", + "const_cast", + //"continue", + "co_await", + "co_return", + "co_yield", + "decltype", + //"default", + "delete", + //"do", + //"double", + "dynamic_cast", + //"else", + //"enum", + "explicit", + "export", + //"extern", + "false", + //"float", + //"for", + "friend", + //"goto", + //"if", + //"inline", + //"int", + //"long", + "mutable", + "namespace", + "new", + "noexcept", + "not", + "not_eq", + "nullptr", + "operator", + "or", + "or_eq", + "private", + "protected", + "public", + "reflexpr", + //"register", + "reinterpret_cast", + "requires", + //"return", + //"short", + //"signed", + //"sizeof", + //"static", + "static_assert", + "static_cast", + //"struct", + //"switch", + "synchronized", + "template", + "this", + "thread_local", + "throw", + "true", + "try", + //"typedef", + "typeid", + "typename", + //"union", + //"unsigned", + "using", + "virtual", + //"void", + //"volatile", + "wchar_t", + //"while", + "xor", + "xor_eq", + "final", + "override", + "transaction_safe", + "transaction_safe_dynamic") ); instantiationTypes.clear(); From 2771642b71f94a2c38a96f67c5f2c1c75456c5c2 Mon Sep 17 00:00:00 2001 From: William Cheng Date: Tue, 5 Jan 2021 10:36:09 +0800 Subject: [PATCH 2/2] update doc --- docs/generators/c.md | 68 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/docs/generators/c.md b/docs/generators/c.md index 29df6b2096e2..448cf98b4bfa 100644 --- a/docs/generators/c.md +++ b/docs/generators/c.md @@ -56,41 +56,109 @@ These options may be applied as additional-properties (cli) or configOptions (pl
  • _noreturn
  • _static_assert
  • _thread_local
  • +
  • alignas
  • +
  • alignof
  • +
  • and
  • +
  • and_eq
  • +
  • asm
  • +
  • atomic_cancel
  • +
  • atomic_commit
  • +
  • atomic_noexcept
  • auto
  • +
  • bitand
  • +
  • bitor
  • +
  • bool
  • break
  • case
  • +
  • catch
  • char
  • +
  • char16_t
  • +
  • char32_t
  • +
  • char8_t
  • +
  • class
  • +
  • co_await
  • +
  • co_return
  • +
  • co_yield
  • +
  • compl
  • +
  • concept
  • const
  • +
  • const_cast
  • +
  • consteval
  • +
  • constexpr
  • +
  • constinit
  • continue
  • +
  • decltype
  • default
  • +
  • delete
  • do
  • double
  • +
  • dynamic_cast
  • else
  • enum
  • +
  • explicit
  • +
  • export
  • extern
  • +
  • false
  • +
  • final
  • float
  • for
  • +
  • friend
  • goto
  • if
  • inline
  • int
  • long
  • +
  • mutable
  • +
  • namespace
  • +
  • new
  • +
  • noexcept
  • +
  • not
  • +
  • not_eq
  • +
  • nullptr
  • +
  • operator
  • +
  • or
  • +
  • or_eq
  • +
  • override
  • +
  • private
  • +
  • protected
  • +
  • public
  • +
  • reflexpr
  • register
  • +
  • reinterpret_cast
  • remove
  • +
  • requires
  • restrict
  • return
  • short
  • signed
  • sizeof
  • static
  • +
  • static_assert
  • +
  • static_cast
  • struct
  • switch
  • +
  • synchronized
  • +
  • template
  • +
  • this
  • +
  • thread_local
  • +
  • throw
  • +
  • transaction_safe
  • +
  • transaction_safe_dynamic
  • +
  • true
  • +
  • try
  • typedef
  • +
  • typeid
  • +
  • typename
  • union
  • unsigned
  • +
  • using
  • +
  • virtual
  • void
  • volatile
  • +
  • wchar_t
  • while
  • +
  • xor
  • +
  • xor_eq
  • ## FEATURE SET