diff options
Diffstat (limited to 'xsde/cxx/hybrid/parser-header.cxx')
-rw-r--r-- | xsde/cxx/hybrid/parser-header.cxx | 29 |
1 files changed, 25 insertions, 4 deletions
diff --git a/xsde/cxx/hybrid/parser-header.cxx b/xsde/cxx/hybrid/parser-header.cxx index d3ba4b4..a09375a 100644 --- a/xsde/cxx/hybrid/parser-header.cxx +++ b/xsde/cxx/hybrid/parser-header.cxx @@ -113,17 +113,38 @@ namespace CXX // pre // - os << "virtual void" << endl - << "pre ();" - << endl; + if (!fl || !base_enum) + os << "virtual void" << endl + << "pre ();" + << endl; - // _characters + // _pre // if (!base_enum) os << "virtual void" << endl + << "_pre ();" + << endl; + + if (!base_enum) + { + // _characters + // + os << "virtual void" << endl << "_characters (const " << string_type << "&);" << endl; + // _post + // + if (!options.value<CLI::suppress_validation> () && + !options.value<CLI::suppress_parser_val> ()) + { + os << "virtual void" << endl + << "_post ();" + << endl; + } + } + + // post // String const& ret (pret_type (e)); |