aboutsummaryrefslogtreecommitdiff
path: root/xsde/cxx/parser/parser-header.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'xsde/cxx/parser/parser-header.cxx')
-rw-r--r--xsde/cxx/parser/parser-header.cxx14
1 files changed, 10 insertions, 4 deletions
diff --git a/xsde/cxx/parser/parser-header.cxx b/xsde/cxx/parser/parser-header.cxx
index fe6d67b..2498768 100644
--- a/xsde/cxx/parser/parser-header.cxx
+++ b/xsde/cxx/parser/parser-header.cxx
@@ -1523,14 +1523,20 @@ namespace CXX
String const& real_name (c.get<String> ("p:real-name"));
String const& name (c.get<String> ("p:name"));
- os << "typedef " << real_name << " " << name << ";";
-
String const& real_impl (c.get<String> ("p:real-impl"));
String const& impl (c.get<String> ("p:impl"));
- os << "typedef " << real_impl << " " << impl << ";"
- << endl;
+ if (options.value<CLI::skel_type_suffix> () == "_pskel")
+ os << "using " << real_name << ";";
+ else
+ os << "typedef " << real_name << " " << name << ";";
+ if (options.value<CLI::impl_type_suffix> () == "_pimpl")
+ os << "using " << real_impl << ";";
+ else
+ os << "typedef " << real_impl << " " << impl << ";";
+
+ os << endl;
return true;
}