diff options
author | dimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7> | 2006-02-27 20:11:09 (GMT) |
---|---|---|
committer | dimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7> | 2006-02-27 20:11:09 (GMT) |
commit | 0a773cb15d41e5806b799cd24c076c60b734615c (patch) | |
tree | 5e27018c48206637a831c02760f69c7df275f1c9 /src/scanner.l | |
parent | a9a600c4692a1d0b0a6a09362db1d6da8bda9a30 (diff) | |
download | Doxygen-0a773cb15d41e5806b799cd24c076c60b734615c.zip Doxygen-0a773cb15d41e5806b799cd24c076c60b734615c.tar.gz Doxygen-0a773cb15d41e5806b799cd24c076c60b734615c.tar.bz2 |
Release-1.4.6-20060227
Diffstat (limited to 'src/scanner.l')
-rw-r--r-- | src/scanner.l | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/src/scanner.l b/src/scanner.l index bb941f7..7a3a8c0 100644 --- a/src/scanner.l +++ b/src/scanner.l @@ -543,7 +543,8 @@ ID "$"?[a-z_A-Z][a-z_A-Z0-9]* LABELID [a-z_A-Z][a-z_A-Z0-9\-]* SCOPEID {ID}({ID}*{BN}*"::"{BN}*)*({ID}?) SCOPENAME "$"?(({ID}?{BN}*"::"{BN}*)*)((~{BN}*)?{ID}) -TSCOPE {ID}("<"[a-z_A-Z0-9 \t\*\&]*">")? +TSCOPE {ID}("<"[a-z_A-Z0-9 \t\*\&,]*">")? +FTSCOPE {ID}("<"[a-z_A-Z0-9\*\&,]*">")? CSSCOPENAME (({ID}?{BN}*"."{BN}*)*)((~{BN}*)?{ID}) ATTR ({B}+[^>\n]*)? A [aA] @@ -1486,7 +1487,7 @@ IDLATTR ("["[^\]]*"]"){BN}* <QtPropType>{B}+ { current->type+=yytext; } -<QtPropType>({ID}"::")*{ID} { +<QtPropType>({FTSCOPE}"::")*{FTSCOPE} { current->type+=yytext; BEGIN(QtPropName); } @@ -2408,6 +2409,10 @@ IDLATTR ("["[^\]]*"]"){BN}* <ReadBody,ReadNSBody,ReadBodyIntf>"{" { current->program += yytext ; ++curlyCount ; } +<ReadBodyIntf>"}" { + current->program += yytext ; + --curlyCount ; + } <ReadBody,ReadNSBody>"}" { //err("ReadBody count=%d\n",curlyCount); if ( curlyCount>0 ) { @@ -2681,7 +2686,7 @@ IDLATTR ("["[^\]]*"]"){BN}* } <ReadBody,ReadNSBody,ReadBodyIntf>. { current->program += yytext ; } -<FindMembers>"("/({BN}*{TSCOPE}{BN}*"::")*{TSCOPE}{BN}*")"{BN}*"(" | /* typedef void (A<int>::func_t)(args...) */ +<FindMembers>"("/{BN}*({TSCOPE}{BN}*"::")*{TSCOPE}{BN}*")"{BN}*"(" | /* typedef void (A<int>::func_t)(args...) */ <FindMembers>("("({BN}*{TSCOPE}{BN}*"::")*({BN}*"*"{BN}*)+)+ { /* typedef void (A::*ptr_t)(args...) */ current->bodyLine = yyLineNr; lineCount(); @@ -3485,7 +3490,7 @@ IDLATTR ("["[^\]]*"]"){BN}* yyLineNr++; //addToBody(yytext); } -<SkipCurly,SkipCurlyCpp>[^\n"'@\\/{}]+ { +<SkipCurly,SkipCurlyCpp>[^\n#"'@\\/{}]+ { //addToBody(yytext); } <SkipCurlyCpp>\n { @@ -3783,8 +3788,8 @@ IDLATTR ("["[^\]]*"]"){BN}* current->name.sprintf("@%d",anonCount++); } curlyCount=0; - if (/*current->section==Entry::PROTOCOL_SEC || - current->section==Entry::OBJCIMPL_SEC*/ + if (current_root && // not a nested struct inside an @interface section + current_root->section!=Entry::INTERFACE_SEC && insideObjC ) { // ObjC body that ends with @end |