#include <export.hh>
Classes | |
struct | TypedefSpec |
Public Member Functions | |
std::string | getIDLAbsolute (Typelib::Type const &type) const |
std::string | getIDLRelative (Typelib::Type const &type, std::string const &relative_to) const |
std::string | getNamespacePrefix () const |
std::string | getNamespaceSuffix () const |
IDLExport () | |
bool | marshalOpaquesAsAny () const |
virtual void | save (std::ostream &stream, utilmm::config_set const &config, Typelib::Registry const &type) |
virtual bool | save (std::ostream &stream, Typelib::RegistryIterator const &type) |
Static Public Member Functions | |
static void | checkType (Typelib::Type const &type) |
Protected Member Functions | |
virtual void | end (std::ostream &stream, Typelib::Registry const ®istry) |
Private Types | |
typedef std::map< std::string, std::list< std::string > > | TypedefMap |
Private Member Functions | |
void | adaptNamespace (std::ostream &stream, std::string const &ns) |
void | closeNamespaces (std::ostream &stream, int levels) |
void | generateTypedefs (std::ostream &stream) |
Private Attributes | |
int | m_blob_threshold |
std::map< std::string, Typelib::Type const * > | m_exported_typedefs |
std::string | m_indent |
std::string | m_namespace |
std::string | m_ns_prefix |
std::string | m_ns_suffix |
bool | m_opaque_as_any |
std::set< std::string > | m_selected_types |
TypedefMap | m_typedefs |
Definition at line 18 of file idl/export.hh.
typedef std::map<std::string, std::list<std::string> > IDLExport::TypedefMap [private] |
Definition at line 34 of file idl/export.hh.
Definition at line 405 of file idl/export.cc.
void IDLExport::adaptNamespace | ( | std::ostream & | stream, |
std::string const & | ns | ||
) | [private] |
Definition at line 442 of file idl/export.cc.
void IDLExport::checkType | ( | Typelib::Type const & | type | ) | [static] |
Definition at line 429 of file idl/export.cc.
void IDLExport::closeNamespaces | ( | std::ostream & | stream, |
int | levels | ||
) | [private] |
Definition at line 420 of file idl/export.cc.
void IDLExport::end | ( | std::ostream & | stream, |
Typelib::Registry const & | registry | ||
) | [protected, virtual] |
Called by save to add data after saving all registry types
Reimplemented from Typelib::Exporter.
Definition at line 411 of file idl/export.cc.
void IDLExport::generateTypedefs | ( | std::ostream & | stream | ) | [private] |
Definition at line 496 of file idl/export.cc.
std::string IDLExport::getIDLAbsolute | ( | Typelib::Type const & | type | ) | const |
Definition at line 468 of file idl/export.cc.
std::string IDLExport::getIDLRelative | ( | Typelib::Type const & | type, |
std::string const & | relative_to | ||
) | const |
Definition at line 473 of file idl/export.cc.
std::string IDLExport::getNamespacePrefix | ( | ) | const |
Definition at line 509 of file idl/export.cc.
std::string IDLExport::getNamespaceSuffix | ( | ) | const |
Definition at line 513 of file idl/export.cc.
bool IDLExport::marshalOpaquesAsAny | ( | ) | const |
Definition at line 408 of file idl/export.cc.
virtual void IDLExport::save | ( | std::ostream & | stream, |
utilmm::config_set const & | config, | ||
Typelib::Registry const & | registry | ||
) | [virtual] |
Serialize a whole registry using this exporter
The default implementation calls begin(), iterates on all elements in registry, taking into account dependencies (i.e. a type will be serialized before another type which references it) and finally calls end()
UnsupportedType | if a type cannot be serialized in this format. In particular, this is thrown if the registry contains recursive types |
ExportError | for all export errors |
Reimplemented from Typelib::Exporter.
virtual bool IDLExport::save | ( | std::ostream & | stream, |
Typelib::RegistryIterator const & | type | ||
) | [virtual] |
Serialize one type in stream
. It is called by Registry::save(ostream&, Registry const&)
Implements Typelib::Exporter.
int IDLExport::m_blob_threshold [private] |
Definition at line 24 of file idl/export.hh.
std::map<std::string, Typelib::Type const*> IDLExport::m_exported_typedefs [private] |
The set of typedefs that have been exported during the generation process, -- i.e. before the end of generation
Definition at line 40 of file idl/export.hh.
std::string IDLExport::m_indent [private] |
Definition at line 23 of file idl/export.hh.
std::string IDLExport::m_namespace [private] |
Definition at line 20 of file idl/export.hh.
std::string IDLExport::m_ns_prefix [private] |
Definition at line 21 of file idl/export.hh.
std::string IDLExport::m_ns_suffix [private] |
Definition at line 22 of file idl/export.hh.
bool IDLExport::m_opaque_as_any [private] |
Definition at line 25 of file idl/export.hh.
std::set<std::string> IDLExport::m_selected_types [private] |
Definition at line 27 of file idl/export.hh.
TypedefMap IDLExport::m_typedefs [private] |
Definition at line 35 of file idl/export.hh.