parameters: (t)
docstring: r'/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/
docstring_summary: r'/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/
docstring_tokens: r / \ * ( [ ^ * ] | [ \ r \ n ] | ( \ * + ( [ ^ * / ] | [ \ r \ n ] ))) * \ * + /
function: def t_COMMENT_MULTILINE(t):
      r'/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/'
      global doxygenCommentCache
      if t.value.startswith("/**") or t.value.startswith("/*!"):
          #not sure why, but get double new lines
          v = t.value.replace("\n\n", "\n")
          #strip prefixing whitespace
          v = re.sub("\n[\s]+\*", "\n*", v)
          doxygenCommentCache += v
      t.lexer.lineno += len([a for a in t.value if a=="\n"])
function_tokens: def t_COMMENT_MULTILINE ( t ) : global doxygenCommentCache if t . value . startswith ( "/**" ) or t . value . startswith ( "/*!" ) : #not sure why, but get double new lines v = t . value . replace ( "\n\n" , "\n" ) #strip prefixing whitespace v = re . sub ( "\n[\s]+\*" , "\n*" , v ) doxygenCommentCache += v t . lexer . lineno += len ( [ a for a in t . value if a == "\n" ] )