From 0f9b90a32bd9c19af86acd41c4c0bd3fb467984e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonathan=20M=C3=BCller?= Date: Fri, 10 Nov 2017 09:33:37 +0100 Subject: [PATCH] Add name override for enum to string --- example/enum_to_string.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/example/enum_to_string.cpp b/example/enum_to_string.cpp index 02e0d0b..04bab5d 100644 --- a/example/enum_to_string.cpp +++ b/example/enum_to_string.cpp @@ -39,7 +39,14 @@ void generate_to_string(const cppast::cpp_file& file) { std::cout << " case " << enum_.name() << "::" << enumerator.name() << ":\n"; - std::cout << " return \"" << enumerator.name() << "\";\n"; + + if (auto attr = + cppast::has_attribute(enumerator, "generate::to_string")) + std::cout << " return " + << attr.value().arguments().value().as_string() + << ";\n"; + else + std::cout << " return \"" << enumerator.name() << "\";\n"; } std::cout << " }\n";