diff options
author | Tom Rondeau | 2011-12-04 11:19:37 -0500 |
---|---|---|
committer | Tom Rondeau | 2011-12-04 11:19:37 -0500 |
commit | 7209280a2b21fb31e5533a17047ed8c6ba5527f1 (patch) | |
tree | f3ef58059fa9a55be67230ad1949d57ab2c1a4b8 /docs/doxygen/doxyxml/text.py | |
parent | 5c1576570e156633c9531932baa79fda9ff9a573 (diff) | |
parent | f536b394f20ef88b426bf4bb6e9b69f6efb9847e (diff) | |
download | gnuradio-7209280a2b21fb31e5533a17047ed8c6ba5527f1.tar.gz gnuradio-7209280a2b21fb31e5533a17047ed8c6ba5527f1.tar.bz2 gnuradio-7209280a2b21fb31e5533a17047ed8c6ba5527f1.zip |
Merge branch 'more_swigness_docs'
Diffstat (limited to 'docs/doxygen/doxyxml/text.py')
-rw-r--r-- | docs/doxygen/doxyxml/text.py | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/docs/doxygen/doxyxml/text.py b/docs/doxygen/doxyxml/text.py new file mode 100644 index 000000000..ddf2c36e2 --- /dev/null +++ b/docs/doxygen/doxyxml/text.py @@ -0,0 +1,56 @@ +# +# Copyright 2010 Free Software Foundation, Inc. +# +# This file is part of GNU Radio +# +# GNU Radio is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3, or (at your option) +# any later version. +# +# GNU Radio is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Radio; see the file COPYING. If not, write to +# the Free Software Foundation, Inc., 51 Franklin Street, +# Boston, MA 02110-1301, USA. +# +""" +Utilities for extracting text from generated classes. +""" + +def is_string(txt): + if isinstance(txt, str): + return True + try: + if isinstance(txt, unicode): + return True + except NameError: + pass + return False + +def description(obj): + if obj is None: + return None + return description_bit(obj).strip() + +def description_bit(obj): + if hasattr(obj, 'content'): + contents = [description_bit(item) for item in obj.content] + result = ''.join(contents) + elif hasattr(obj, 'content_'): + contents = [description_bit(item) for item in obj.content_] + result = ''.join(contents) + elif hasattr(obj, 'value'): + result = description_bit(obj.value) + elif is_string(obj): + return obj + else: + raise StandardError('Expecting a string or something with content, content_ or value attribute') + # If this bit is a paragraph then add one some line breaks. + if hasattr(obj, 'name') and obj.name == 'para': + result += "\n\n" + return result |