diff options
author | Alan Conway <aconway@apache.org> | 2013-05-02 21:47:13 +0000 |
---|---|---|
committer | Alan Conway <aconway@apache.org> | 2013-05-02 21:47:13 +0000 |
commit | ba9f80714ae4870c01b450b4f89cfa87d51a6827 (patch) | |
tree | f66a443236e4a7886f7e8ca2e449d52c7d1766ec /qpid/cpp/rubygen | |
parent | 276e15f7b9baa99372f290f52f40bda2b9c5e5b7 (diff) | |
download | qpid-python-ba9f80714ae4870c01b450b4f89cfa87d51a6827.tar.gz |
QPID-4798: Fix up c++ code generation to use stripped spec files.
The stripped specs have no <doc> elements, this was tripping up the code
generator. Fixed the generator to process <doc> elements if they are present but
to carry on without them if they are not.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1478582 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/rubygen')
-rwxr-xr-x | qpid/cpp/rubygen/0-10/exceptions.rb | 2 | ||||
-rwxr-xr-x | qpid/cpp/rubygen/framing.0-10/Session.rb | 4 | ||||
-rwxr-xr-x | qpid/cpp/rubygen/framing.0-10/constants.rb | 2 |
3 files changed, 5 insertions, 3 deletions
diff --git a/qpid/cpp/rubygen/0-10/exceptions.rb b/qpid/cpp/rubygen/0-10/exceptions.rb index 02e3a5d547..fed8fdac5b 100755 --- a/qpid/cpp/rubygen/0-10/exceptions.rb +++ b/qpid/cpp/rubygen/0-10/exceptions.rb @@ -32,7 +32,7 @@ class GenExceptions < CppGen enum.choices.each { |c| name=c.name.typename+suffix+"Exception" genl - doxygen_comment { genl c.doc } + doxygen_comment { genl c.doc } if c.doc struct(name, "public #{base}") { genl "#{name}(const std::string& msg=std::string())" genl " : #{base}(#{ns}::#{c.name.shout}, msg) {}" diff --git a/qpid/cpp/rubygen/framing.0-10/Session.rb b/qpid/cpp/rubygen/framing.0-10/Session.rb index e800df9b2e..28165448ed 100755 --- a/qpid/cpp/rubygen/framing.0-10/Session.rb +++ b/qpid/cpp/rubygen/framing.0-10/Session.rb @@ -34,6 +34,7 @@ class CppGen # Generates a doxygen comment for AmqpMethod m. def doxygen(m) + return unless m.doc doxygen_comment { genl m.doc genl @@ -143,7 +144,8 @@ class SessionNoKeywordGen < CppGen namespace(@namespace) { doxygen_comment { genl "AMQP #{@amqp.version} #{sync_adjective} session API." - genl @amqp.class_("session").doc + d = @amqp.class_("session").doc + genl d if d # FIXME aconway 2008-05-23: additional doc on sync/async use. } cpp_class(@classname, "public #{@version_base}") { diff --git a/qpid/cpp/rubygen/framing.0-10/constants.rb b/qpid/cpp/rubygen/framing.0-10/constants.rb index 85bfb96ac0..589d94e23d 100755 --- a/qpid/cpp/rubygen/framing.0-10/constants.rb +++ b/qpid/cpp/rubygen/framing.0-10/constants.rb @@ -135,7 +135,7 @@ EOS name=c.name.caps+"Exception" value="#{package}::#{enum.parent.name.shout}_#{c.name.shout}" genl - doxygen_comment { genl c.doc } + doxygen_comment { genl c.doc } if c.doc struct(c.name.caps+"Exception", base) { genl "std::string getPrefix() const { return \"#{c.name}\"; }" genl "#{c.name.caps}Exception(const std::string& msg=std::string()) : #{base}(#{value}, \"\"+msg) {}" |