Showing the changes to python (1 of 1 file). Show all
Unified · Split
| @@ -129,17 +129,29 @@ def analyze_cpp_output(cpp_objects, cpp_output): · 128 unmodified lines | |||
| 129 | lib = {} | 129 | lib = {} |
| 130 | 130 | ||
| 131 | for o in cpp_objects: | 131 | for o in cpp_objects: |
| 132 | if o[:6] != 'aubio_': | 132 | shortname = '' |
| 133 | continue | 133 | if o[:6] == 'aubio_': |
| 134 | shortname = o[6:-2] | 134 | shortname = o[6:-2] # without aubio_ |
| 135 | longname = o[:-2] # without _t | ||
| 136 | else: # support object not starting with aubio_ (fvec...) | ||
| 137 | shortname = o | ||
| 138 | longname = shortname | ||
| 139 | |||
| 135 | if shortname in skip_objects: | 140 | if shortname in skip_objects: |
| 136 | continue | 141 | continue |
| 137 | lib[shortname] = {'struct': [], 'new': [], 'del': [], 'do': [], 'get': [], 'set': [], 'other': []} | 142 | lib[shortname] = {'struct': [], 'new': [], 'del': [], 'do': [], 'get': [], 'set': [], 'other': []} |
| 138 | lib[shortname]['longname'] = o | 143 | lib[shortname]['longname'] = o |
| 139 | lib[shortname]['shortname'] = shortname | 144 | lib[shortname]['shortname'] = shortname |
| 145 | valid_funcname_part = ['_'+longname,longname+'_'] | ||
| 146 | |||
| 140 | for fn in cpp_output: | 147 | for fn in cpp_output: |
| 141 | if o[:-1] in fn: | 148 | func_name = fn.split('(')[0].strip().split(' ')[1:] |
| 142 | #print "found", o[:-1], "in", fn | 149 | if func_name: |
| 150 | func_name = func_name[-1] | ||
| 151 | else: | ||
| 152 | raise NameError('Warning : error while parsing : unexpected line %s' % fn) | ||
| 153 | if any(x in func_name for x in valid_funcname_part): | ||
| 154 | # print "found", shortname, "in", fn | ||
| 143 | if 'typedef struct ' in fn: | 155 | if 'typedef struct ' in fn: |
| 144 | lib[shortname]['struct'].append(fn) | 156 | lib[shortname]['struct'].append(fn) |
| 145 | elif '_do' in fn: | 157 | elif '_do' in fn: |