320{
322 {
323 return;
324 }
326 struct yyguts_t *yyg = (
struct yyguts_t*)
g_yyscanner;
327
328#ifdef FLEX_DEBUG
330#endif
331
333 yyextra->inputString = decl.
data();
334
335 yyextra->inputPosition = 0;
336 yyextra->classTempListFound = false;
337 yyextra->funcTempListFound = false;
338 yyextra->insideObjC = lang==SrcLangExt::ObjC;
339 yyextra->insidePHP = lang==SrcLangExt::PHP;
340 yyextra->insidePython = lang==SrcLangExt::Python;
341 yyextra->scope.clear();
342 yyextra->className.clear();
343 yyextra->classTempList.clear();
344 yyextra->funcTempList.clear();
345 yyextra->name.clear();
346 yyextra->type.clear();
347 yyextra->args.clear();
348 yyextra->exceptionString.clear();
349
351 BEGIN( Start );
353
354
355
356
357 if (
size_t nb = yyextra->name.rfind(
'[') ; nb!=
DString::npos && yyextra->args.empty())
358 {
359 yyextra->args.prepend(yyextra->name.mid(nb));
360 yyextra->name=yyextra->name.left(nb);
361 }
362
363 cl=yyextra->scope;
365 size_t il=n.find('<'), ir=n.rfind('>');
367
368
369 {
371 n=n.left(il);
372 }
373
374
375
379
380 if (!t.empty() && !t.startsWith("decltype") && t.at(t.length()-1)==')')
381 {
382 a.prepend(")");
383 t=t.left(t.length()-1);
384 }
385
386
387
389 return;
390}
bool empty() const
Returns true iff the string is empty (std::string compatible alias for isEmpty()).
static constexpr size_t npos
value used to indicate 'not found' or 'to the end of the string', matching std::string::npos
const char * data() const
Returns a pointer to the contents of the string in the form of a 0-terminated C string.
static bool isFlagSet(const DebugMask mask)
static yyscan_t g_yyscanner
static struct declinfoYY_state g_declinfo_extra
DString removeRedundantWhiteSpace(const DString &s)