]> git.buserror.net Git - polintos/scott/priv.git/blobdiff - idlcomp/languages/c++/c++.h
idlcomp/c++: Separate output_nsdecl into begin/children/end.
[polintos/scott/priv.git] / idlcomp / languages / c++ / c++.h
index 214f2cdb1828abec115a2337607b15b628238bbe..a8fb246821ea3c025d8c43d6bfd5dfc02041a665 100644 (file)
@@ -82,8 +82,6 @@ class CPPFile : public LangCallback {
                               bool prototype, bool retval);
        void output_one_method_ptr(Method *m, Interface *iface);
        
-       static void output_iface_ns(CPPFile *file, NameSpace *sym);
-       
        //// Misc members:
 
        // Output the static const guid[] value, and the IFaceInfo struct.
@@ -96,7 +94,6 @@ class CPPFile : public LangCallback {
        
        int output_datum(Struct *ns, Datum *d, int offset);
 
-       static void output_vstruct_ns(CPPFile *file, NameSpace *sym);
        void output_vstruct_info(Struct *sym);
        void output_vstruct_main(Struct *sym);
        void output_struct_ctor(Struct *sym, bool extra_vstruct);
@@ -142,8 +139,10 @@ class CPPFile : public LangCallback {
        // namespace, before any namespace members have been
        // emitted.
        
-       typedef void (*nsdecl_callback)(CPPFile *file, NameSpace *ns);
-       void output_nsdecl(NameSpace *ns, nsdecl_callback cb = NULL);
+       void output_nsdecl_begin(NameSpace *ns);
+       void output_nsdecl_children(NameSpace *ns);
+       void output_nsdecl_end(NameSpace *ns);
+       void output_nsdecl(NameSpace *ns);
 
        void output_aliases_and_types(NameSpace *ns);