(var)
| 251 | |
| 252 | |
| 253 | def getstrlength(var): |
| 254 | if isstringfunction(var): |
| 255 | if 'result' in var: |
| 256 | a = var['result'] |
| 257 | else: |
| 258 | a = var['name'] |
| 259 | if a in var['vars']: |
| 260 | return getstrlength(var['vars'][a]) |
| 261 | else: |
| 262 | errmess('getstrlength: function %s has no return value?!\n' % a) |
| 263 | if not isstring(var): |
| 264 | errmess( |
| 265 | 'getstrlength: expected a signature of a string but got: %s\n' % (repr(var))) |
| 266 | len = '1' |
| 267 | if 'charselector' in var: |
| 268 | a = var['charselector'] |
| 269 | if '*' in a: |
| 270 | len = a['*'] |
| 271 | elif 'len' in a: |
| 272 | len = f2cexpr(a['len']) |
| 273 | if re.match(r'\(\s*(\*|:)\s*\)', len) or re.match(r'(\*|:)', len): |
| 274 | if isintent_hide(var): |
| 275 | errmess('getstrlength:intent(hide): expected a string with defined length but got: %s\n' % ( |
| 276 | repr(var))) |
| 277 | len = '-1' |
| 278 | return len |
| 279 | |
| 280 | |
| 281 | def getarrdims(a, var, verbose=0): |
no test coverage detected