Classes | Macros | Typedefs | Functions | Variables
commentcnv.cpp File Reference
#include <stdio.h>
#include <string.h>
#include <errno.h>
#include <stdlib.h>
#include <qstack.h>
#include <qregexp.h>
#include <qtextstream.h>
#include <qglobal.h>
#include "bufstr.h"
#include "debug.h"
#include "message.h"
#include "config.h"
#include "doxygen.h"
#include "util.h"
#include "condparser.h"
#include <assert.h>

Go to the source code of this file.

Classes

struct  yy_buffer_state
 
struct  yy_trans_info
 
struct  CondCtx
 
struct  CommentCtx
 

Macros

#define YY_INT_ALIGNED   short int
 
#define yy_create_buffer   commentcnvYY_create_buffer
 
#define yy_delete_buffer   commentcnvYY_delete_buffer
 
#define yy_flex_debug   commentcnvYY_flex_debug
 
#define yy_init_buffer   commentcnvYY_init_buffer
 
#define yy_flush_buffer   commentcnvYY_flush_buffer
 
#define yy_load_buffer_state   commentcnvYY_load_buffer_state
 
#define yy_switch_to_buffer   commentcnvYY_switch_to_buffer
 
#define yyin   commentcnvYYin
 
#define yyleng   commentcnvYYleng
 
#define yylex   commentcnvYYlex
 
#define yylineno   commentcnvYYlineno
 
#define yyout   commentcnvYYout
 
#define yyrestart   commentcnvYYrestart
 
#define yytext   commentcnvYYtext
 
#define yywrap   commentcnvYYwrap
 
#define yyalloc   commentcnvYYalloc
 
#define yyrealloc   commentcnvYYrealloc
 
#define yyfree   commentcnvYYfree
 
#define FLEX_SCANNER
 
#define YY_FLEX_MAJOR_VERSION   2
 
#define YY_FLEX_MINOR_VERSION   5
 
#define YY_FLEX_SUBMINOR_VERSION   35
 
#define FLEX_BETA
 
#define FLEXINT_H
 
#define INT8_MIN   (-128)
 
#define INT16_MIN   (-32767-1)
 
#define INT32_MIN   (-2147483647-1)
 
#define INT8_MAX   (127)
 
#define INT16_MAX   (32767)
 
#define INT32_MAX   (2147483647)
 
#define UINT8_MAX   (255U)
 
#define UINT16_MAX   (65535U)
 
#define UINT32_MAX   (4294967295U)
 
#define yyconst
 
#define YY_NULL   0
 
#define YY_SC_TO_UI(c)   ((unsigned int) (unsigned char) c)
 
#define BEGIN   (yy_start) = 1 + 2 *
 
#define YY_START   (((yy_start) - 1) / 2)
 
#define YYSTATE   YY_START
 
#define YY_STATE_EOF(state)   (YY_END_OF_BUFFER + state + 1)
 
#define YY_NEW_FILE   commentcnvYYrestart(commentcnvYYin )
 
#define YY_END_OF_BUFFER_CHAR   0
 
#define YY_BUF_SIZE   16384
 
#define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
 
#define YY_TYPEDEF_YY_BUFFER_STATE
 
#define EOB_ACT_CONTINUE_SCAN   0
 
#define EOB_ACT_END_OF_FILE   1
 
#define EOB_ACT_LAST_MATCH   2
 
#define YY_LESS_LINENO(n)
 
#define yyless(n)
 
#define unput(c)   yyunput( c, (yytext_ptr) )
 
#define YY_TYPEDEF_YY_SIZE_T
 
#define YY_STRUCT_YY_BUFFER_STATE
 
#define YY_BUFFER_NEW   0
 
#define YY_BUFFER_NORMAL   1
 
#define YY_BUFFER_EOF_PENDING   2
 
#define YY_CURRENT_BUFFER
 
#define YY_CURRENT_BUFFER_LVALUE   (yy_buffer_stack)[(yy_buffer_stack_top)]
 
#define YY_FLUSH_BUFFER   commentcnvYY_flush_buffer(YY_CURRENT_BUFFER )
 
#define yy_new_buffer   commentcnvYY_create_buffer
 
#define yy_set_interactive(is_interactive)
 
#define yy_set_bol(at_bol)
 
#define YY_AT_BOL()   (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
 
#define commentcnvYYwrap(n)   1
 
#define YY_SKIP_YYWRAP
 
#define yytext_ptr   commentcnvYYtext
 
#define YY_DO_BEFORE_ACTION
 
#define YY_NUM_RULES   84
 
#define YY_END_OF_BUFFER   85
 
#define YY_TRAILING_MASK   0x2000
 
#define YY_TRAILING_HEAD_MASK   0x4000
 
#define REJECT
 
#define yymore()   yymore_used_but_not_detected
 
#define YY_MORE_ADJ   0
 
#define YY_RESTORE_YY_MORE_OFFSET
 
#define YY_NO_INPUT   1
 
#define YY_NO_UNISTD_H   1
 
#define ADDCHAR(c)    g_outBuf->addChar(c)
 
#define ADDARRAY(a, s)   g_outBuf->addArray(a,s)
 
#define YY_INPUT(buf, result, max_size)   result=yyread(buf,max_size);
 
#define INITIAL   0
 
#define Scan   1
 
#define SkipString   2
 
#define SkipChar   3
 
#define SComment   4
 
#define CComment   5
 
#define Verbatim   6
 
#define VerbatimCode   7
 
#define ReadLine   8
 
#define CondLine   9
 
#define ReadAliasArgs   10
 
#define YY_EXTRA_TYPE   void *
 
#define YY_READ_BUF_SIZE   8192
 
#define ECHO   do { if (fwrite( commentcnvYYtext, commentcnvYYleng, 1, commentcnvYYout )) {} } while (0)
 
#define yyterminate()   return YY_NULL
 
#define YY_START_STACK_INCR   25
 
#define YY_FATAL_ERROR(msg)   yy_fatal_error( msg )
 
#define YY_DECL_IS_OURS   1
 
#define YY_DECL   int commentcnvYYlex (void)
 
#define YY_USER_ACTION
 
#define YY_BREAK   break;
 
#define YY_RULE_SETUP
 
#define YY_EXIT_FAILURE   2
 
#define yyless(n)
 
#define YYTABLES_NAME   "yytables"
 

Typedefs

typedef signed char flex_int8_t
 
typedef short int flex_int16_t
 
typedef int flex_int32_t
 
typedef unsigned char flex_uint8_t
 
typedef unsigned short int flex_uint16_t
 
typedef unsigned int flex_uint32_t
 
typedef struct yy_buffer_stateYY_BUFFER_STATE
 
typedef size_t yy_size_t
 
typedef unsigned char YY_CHAR
 
typedef int yy_state_type
 

Functions

void commentcnvYYrestart (FILE *input_file)
 
void commentcnvYY_switch_to_buffer (YY_BUFFER_STATE new_buffer)
 
YY_BUFFER_STATE commentcnvYY_create_buffer (FILE *file, int size)
 
void commentcnvYY_delete_buffer (YY_BUFFER_STATE b)
 
void commentcnvYY_flush_buffer (YY_BUFFER_STATE b)
 
void commentcnvYYpush_buffer_state (YY_BUFFER_STATE new_buffer)
 
void commentcnvYYpop_buffer_state (void)
 
static void commentcnvYYensure_buffer_stack (void)
 
static void commentcnvYY_load_buffer_state (void)
 
static void commentcnvYY_init_buffer (YY_BUFFER_STATE b, FILE *file)
 
YY_BUFFER_STATE commentcnvYY_scan_buffer (char *base, yy_size_t size)
 
YY_BUFFER_STATE commentcnvYY_scan_string (yyconst char *yy_str)
 
YY_BUFFER_STATE commentcnvYY_scan_bytes (yyconst char *bytes, int len)
 
void * commentcnvYYalloc (yy_size_t)
 
void * commentcnvYYrealloc (void *, yy_size_t)
 
void commentcnvYYfree (void *)
 
static yy_state_type yy_get_previous_state (void)
 
static yy_state_type yy_try_NUL_trans (yy_state_type current_state)
 
static int yy_get_next_buffer (void)
 
static void yy_fatal_error (yyconst char msg[])
 
static void replaceCommentMarker (const char *s, int len)
 
static int computeIndent (const char *s)
 
static void copyToOutput (const char *s, int len)
 
static void startCondSection (const char *sectId)
 
static void endCondSection ()
 
static void replaceAliases (const char *s)
 
static int yyread (char *buf, int max_size)
 
void replaceComment (int offset)
 
static int yy_init_globals (void)
 
int commentcnvYYlex_destroy (void)
 
int commentcnvYYget_debug (void)
 
void commentcnvYYset_debug (int debug_flag)
 
YY_EXTRA_TYPE commentcnvYYget_extra (void)
 
void commentcnvYYset_extra (YY_EXTRA_TYPE user_defined)
 
FILE * commentcnvYYget_in (void)
 
void commentcnvYYset_in (FILE *in_str)
 
FILE * commentcnvYYget_out (void)
 
void commentcnvYYset_out (FILE *out_str)
 
int commentcnvYYget_leng (void)
 
char * commentcnvYYget_text (void)
 
int commentcnvYYget_lineno (void)
 
void commentcnvYYset_lineno (int line_number)
 
static void yyunput (int c, char *buf_ptr)
 
int commentcnvYYlex (void)
 
 if (!(yy_init))
 
 while (1)
 
static void yyunput (int c, register char *yy_bp)
 
static void yy_fatal_error (yyconst char *msg)
 
static bool recognizeFixedForm (const char *contents)
 
void convertCppComments (BufStr *inBuf, BufStr *outBuf, const char *fileName)
 

Variables

int commentcnvYYleng
 
FILE * commentcnvYYin = (FILE *) 0
 
FILE * commentcnvYYout = (FILE *) 0
 
static size_t yy_buffer_stack_top = 0
 
static size_t yy_buffer_stack_max = 0
 
static YY_BUFFER_STATEyy_buffer_stack = 0
 
static char yy_hold_char
 
static int yy_n_chars
 
static char * yy_c_buf_p = (char *) 0
 
static int yy_init = 0
 
static int yy_start = 0
 
static int yy_did_buffer_switch_on_eof
 
int commentcnvYYlineno = 1
 
char * commentcnvYYtext
 
static yyconst flex_int16_t yy_acclist [344]
 
static yyconst flex_int16_t yy_accept [412]
 
static yyconst flex_int32_t yy_ec [256]
 
static yyconst flex_int32_t yy_meta [51]
 
static yyconst flex_int16_t yy_base [464]
 
static yyconst flex_int16_t yy_def [464]
 
static yyconst flex_int16_t yy_nxt [1704]
 
static yyconst flex_int16_t yy_chk [1704]
 
int commentcnvYY_flex_debug = 0
 
static yy_state_typeyy_state_buf =0
 
static yy_state_typeyy_state_ptr =0
 
static char * yy_full_match
 
static int yy_lp
 
static int yy_looking_for_trail_begin = 0
 
static int yy_full_lp
 
static int * yy_full_state
 
static BufStrg_inBuf
 
static BufStrg_outBuf
 
static int g_inBufPos
 
static int g_col
 
static int g_blockHeadCol
 
static bool g_mlBrief
 
static int g_readLineCtx
 
static bool g_skip
 
static QCString g_fileName
 
static int g_lineNr
 
static int g_condCtx
 
static QStack< CondCtxg_condStack
 
static QStack< CommentCtxg_commentStack
 
static QCString g_blockName
 
static int g_lastCommentContext
 
static bool g_inSpecialComment
 
static bool g_inRoseComment
 
static int g_stringContext
 
static int g_charContext
 
static int g_javaBlock
 
static bool g_specialComment
 
static QCString g_aliasString
 
static int g_blockCount
 
static bool g_lastEscaped
 
static int g_lastBlockContext
 
static bool g_pythonDocString
 
static int g_nestingCount
 
static SrcLangExt g_lang
 
static bool isFixedForm
 
 YY_DECL
 
register char * yy_cp
 
register char * yy_bp
 
register int yy_act
 

Macro Definition Documentation

#define ADDARRAY (   a,
  s 
)    g_outBuf->addArray(a,s)

Definition at line 1089 of file commentcnv.cpp.

#define ADDCHAR (   c)    g_outBuf->addChar(c)

Definition at line 1088 of file commentcnv.cpp.

#define BEGIN   (yy_start) = 1 + 2 *

Definition at line 144 of file commentcnv.cpp.

#define CComment   5

Definition at line 1297 of file commentcnv.cpp.

#define commentcnvYYwrap (   n)    1

Definition at line 354 of file commentcnv.cpp.

#define CondLine   9

Definition at line 1301 of file commentcnv.cpp.

#define ECHO   do { if (fwrite( commentcnvYYtext, commentcnvYYleng, 1, commentcnvYYout )) {} } while (0)

Definition at line 1389 of file commentcnv.cpp.

#define EOB_ACT_CONTINUE_SCAN   0

Definition at line 179 of file commentcnv.cpp.

#define EOB_ACT_END_OF_FILE   1

Definition at line 180 of file commentcnv.cpp.

#define EOB_ACT_LAST_MATCH   2

Definition at line 181 of file commentcnv.cpp.

#define FLEX_BETA

Definition at line 33 of file commentcnv.cpp.

#define FLEX_SCANNER

Definition at line 28 of file commentcnv.cpp.

#define FLEXINT_H

Definition at line 49 of file commentcnv.cpp.

#define INITIAL   0

Definition at line 1292 of file commentcnv.cpp.

#define INT16_MAX   (32767)

Definition at line 92 of file commentcnv.cpp.

#define INT16_MIN   (-32767-1)

Definition at line 83 of file commentcnv.cpp.

#define INT32_MAX   (2147483647)

Definition at line 95 of file commentcnv.cpp.

#define INT32_MIN   (-2147483647-1)

Definition at line 86 of file commentcnv.cpp.

#define INT8_MAX   (127)

Definition at line 89 of file commentcnv.cpp.

#define INT8_MIN   (-128)

Definition at line 80 of file commentcnv.cpp.

#define ReadAliasArgs   10

Definition at line 1302 of file commentcnv.cpp.

#define ReadLine   8

Definition at line 1300 of file commentcnv.cpp.

#define REJECT
Value:
{ \
*yy_cp = (yy_hold_char); /* undo effects of setting up commentcnvYYtext */ \
yy_cp = (yy_full_match); /* restore poss. backed-over text */ \
(yy_lp) = (yy_full_lp); /* restore orig. accepting pos. */ \
(yy_state_ptr) = (yy_full_state); /* restore orig. state */ \
yy_current_state = *(yy_state_ptr); /* restore curr. state */ \
++(yy_lp); \
goto find_rule; \
}
static char * yy_full_match
static char yy_hold_char
Definition: commentcnv.cpp:292
register char * yy_cp
static yy_state_type * yy_state_ptr
static int yy_lp
static int yy_full_lp
static int * yy_full_state

Definition at line 1032 of file commentcnv.cpp.

#define Scan   1

Definition at line 1293 of file commentcnv.cpp.

#define SComment   4

Definition at line 1296 of file commentcnv.cpp.

#define SkipChar   3

Definition at line 1295 of file commentcnv.cpp.

#define SkipString   2

Definition at line 1294 of file commentcnv.cpp.

#define UINT16_MAX   (65535U)

Definition at line 101 of file commentcnv.cpp.

#define UINT32_MAX   (4294967295U)

Definition at line 104 of file commentcnv.cpp.

#define UINT8_MAX   (255U)

Definition at line 98 of file commentcnv.cpp.

#define unput (   c)    yyunput( c, (yytext_ptr) )

Definition at line 199 of file commentcnv.cpp.

#define Verbatim   6

Definition at line 1298 of file commentcnv.cpp.

#define VerbatimCode   7

Definition at line 1299 of file commentcnv.cpp.

#define YY_AT_BOL ( )    (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)

Definition at line 350 of file commentcnv.cpp.

#define YY_BREAK   break;

Definition at line 1468 of file commentcnv.cpp.

#define YY_BUF_SIZE   16384

Definition at line 163 of file commentcnv.cpp.

#define YY_BUFFER_EOF_PENDING   2

Definition at line 266 of file commentcnv.cpp.

#define YY_BUFFER_NEW   0

Definition at line 254 of file commentcnv.cpp.

#define YY_BUFFER_NORMAL   1

Definition at line 255 of file commentcnv.cpp.

#define yy_create_buffer   commentcnvYY_create_buffer

Definition at line 9 of file commentcnv.cpp.

#define YY_CURRENT_BUFFER
Value:
: NULL)
static YY_BUFFER_STATE * yy_buffer_stack
Definition: commentcnv.cpp:274
static size_t yy_buffer_stack_top
Definition: commentcnv.cpp:272

Definition at line 282 of file commentcnv.cpp.

#define YY_CURRENT_BUFFER_LVALUE   (yy_buffer_stack)[(yy_buffer_stack_top)]

Definition at line 289 of file commentcnv.cpp.

#define YY_DECL   int commentcnvYYlex (void)

Definition at line 1456 of file commentcnv.cpp.

#define YY_DECL_IS_OURS   1

Definition at line 1452 of file commentcnv.cpp.

#define yy_delete_buffer   commentcnvYY_delete_buffer

Definition at line 10 of file commentcnv.cpp.

#define YY_DO_BEFORE_ACTION
Value:
commentcnvYYleng = (size_t) (yy_cp - yy_bp); \
*yy_cp = '\0'; \
int commentcnvYYleng
Definition: commentcnv.cpp:294
register char * yy_bp
static char yy_hold_char
Definition: commentcnv.cpp:292
#define yytext_ptr
Definition: commentcnv.cpp:368
register char * yy_cp
static char * yy_c_buf_p
Definition: commentcnv.cpp:297

Definition at line 378 of file commentcnv.cpp.

#define YY_END_OF_BUFFER   85

Definition at line 386 of file commentcnv.cpp.

#define YY_END_OF_BUFFER_CHAR   0

Definition at line 159 of file commentcnv.cpp.

#define YY_EXIT_FAILURE   2

Definition at line 3432 of file commentcnv.cpp.

#define YY_EXTRA_TYPE   void *

Definition at line 1313 of file commentcnv.cpp.

#define YY_FATAL_ERROR (   msg)    yy_fatal_error( msg )

Definition at line 1443 of file commentcnv.cpp.

#define yy_flex_debug   commentcnvYY_flex_debug

Definition at line 11 of file commentcnv.cpp.

#define YY_FLEX_MAJOR_VERSION   2

Definition at line 29 of file commentcnv.cpp.

#define YY_FLEX_MINOR_VERSION   5

Definition at line 30 of file commentcnv.cpp.

#define YY_FLEX_SUBMINOR_VERSION   35

Definition at line 31 of file commentcnv.cpp.

#define yy_flush_buffer   commentcnvYY_flush_buffer

Definition at line 13 of file commentcnv.cpp.

#define YY_FLUSH_BUFFER   commentcnvYY_flush_buffer(YY_CURRENT_BUFFER )

Definition at line 318 of file commentcnv.cpp.

#define yy_init_buffer   commentcnvYY_init_buffer

Definition at line 12 of file commentcnv.cpp.

#define YY_INPUT (   buf,
  result,
  max_size 
)    result=yyread(buf,max_size);

Definition at line 1267 of file commentcnv.cpp.

#define YY_INT_ALIGNED   short int

Definition at line 5 of file commentcnv.cpp.

#define YY_LESS_LINENO (   n)

Definition at line 183 of file commentcnv.cpp.

#define yy_load_buffer_state   commentcnvYY_load_buffer_state

Definition at line 14 of file commentcnv.cpp.

#define YY_MORE_ADJ   0

Definition at line 1044 of file commentcnv.cpp.

#define yy_new_buffer   commentcnvYY_create_buffer

Definition at line 328 of file commentcnv.cpp.

#define YY_NEW_FILE   commentcnvYYrestart(commentcnvYYin )

Definition at line 157 of file commentcnv.cpp.

#define YY_NO_INPUT   1

Definition at line 1085 of file commentcnv.cpp.

#define YY_NO_UNISTD_H   1

Definition at line 1086 of file commentcnv.cpp.

#define YY_NULL   0

Definition at line 131 of file commentcnv.cpp.

#define YY_NUM_RULES   84

Definition at line 385 of file commentcnv.cpp.

#define YY_READ_BUF_SIZE   8192

Definition at line 1381 of file commentcnv.cpp.

#define YY_RESTORE_YY_MORE_OFFSET

Definition at line 1045 of file commentcnv.cpp.

#define YY_RULE_SETUP
Value:
if ( commentcnvYYleng > 0 ) \
int commentcnvYYleng
Definition: commentcnv.cpp:294
char * commentcnvYYtext
#define YY_USER_ACTION
#define YY_CURRENT_BUFFER_LVALUE
Definition: commentcnv.cpp:289

Definition at line 1471 of file commentcnv.cpp.

#define YY_SC_TO_UI (   c)    ((unsigned int) (unsigned char) c)

Definition at line 138 of file commentcnv.cpp.

#define yy_set_bol (   at_bol)
Value:
{ \
commentcnvYYensure_buffer_stack (); \
commentcnvYY_create_buffer(commentcnvYYin,YY_BUF_SIZE ); \
} \
YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
}
#define YY_CURRENT_BUFFER_LVALUE
Definition: commentcnv.cpp:289
FILE * commentcnvYYin
Definition: commentcnv.cpp:359
#define YY_BUF_SIZE
Definition: commentcnv.cpp:163
if(!(yy_init))
#define YY_CURRENT_BUFFER
Definition: commentcnv.cpp:282

Definition at line 340 of file commentcnv.cpp.

#define yy_set_interactive (   is_interactive)
Value:
{ \
commentcnvYYensure_buffer_stack (); \
commentcnvYY_create_buffer(commentcnvYYin,YY_BUF_SIZE ); \
} \
YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
}
#define YY_CURRENT_BUFFER_LVALUE
Definition: commentcnv.cpp:289
FILE * commentcnvYYin
Definition: commentcnv.cpp:359
#define YY_BUF_SIZE
Definition: commentcnv.cpp:163
if(!(yy_init))
#define YY_CURRENT_BUFFER
Definition: commentcnv.cpp:282

Definition at line 330 of file commentcnv.cpp.

#define YY_SKIP_YYWRAP

Definition at line 355 of file commentcnv.cpp.

#define YY_START   (((yy_start) - 1) / 2)

Definition at line 150 of file commentcnv.cpp.

#define YY_START_STACK_INCR   25

Definition at line 1438 of file commentcnv.cpp.

#define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))

Definition at line 168 of file commentcnv.cpp.

#define YY_STATE_EOF (   state)    (YY_END_OF_BUFFER + state + 1)

Definition at line 154 of file commentcnv.cpp.

#define YY_STRUCT_YY_BUFFER_STATE

Definition at line 207 of file commentcnv.cpp.

#define yy_switch_to_buffer   commentcnvYY_switch_to_buffer

Definition at line 15 of file commentcnv.cpp.

#define YY_TRAILING_HEAD_MASK   0x4000

Definition at line 1031 of file commentcnv.cpp.

#define YY_TRAILING_MASK   0x2000

Definition at line 1030 of file commentcnv.cpp.

#define YY_TYPEDEF_YY_BUFFER_STATE

Definition at line 171 of file commentcnv.cpp.

#define YY_TYPEDEF_YY_SIZE_T

Definition at line 202 of file commentcnv.cpp.

#define YY_USER_ACTION

Definition at line 1463 of file commentcnv.cpp.

#define yyalloc   commentcnvYYalloc

Definition at line 24 of file commentcnv.cpp.

#define yyconst

Definition at line 127 of file commentcnv.cpp.

#define yyfree   commentcnvYYfree

Definition at line 26 of file commentcnv.cpp.

#define yyin   commentcnvYYin

Definition at line 16 of file commentcnv.cpp.

#define yyleng   commentcnvYYleng

Definition at line 17 of file commentcnv.cpp.

#define yyless (   n)
Value:
do \
{ \
/* Undo effects of setting up commentcnvYYtext. */ \
int yyless_macro_arg = (n); \
YY_LESS_LINENO(yyless_macro_arg);\
(yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
YY_DO_BEFORE_ACTION; /* set up commentcnvYYtext again */ \
} \
while ( 0 )
register char * yy_bp
#define YY_MORE_ADJ
#define YY_RESTORE_YY_MORE_OFFSET
static char yy_hold_char
Definition: commentcnv.cpp:292
while(1)
register char * yy_cp
std::void_t< T > n
static char * yy_c_buf_p
Definition: commentcnv.cpp:297
#define YY_DO_BEFORE_ACTION
Definition: commentcnv.cpp:378

Definition at line 3444 of file commentcnv.cpp.

#define yyless (   n)
Value:
do \
{ \
/* Undo effects of setting up commentcnvYYtext. */ \
int yyless_macro_arg = (n); \
YY_LESS_LINENO(yyless_macro_arg);\
(yy_c_buf_p) = commentcnvYYtext + yyless_macro_arg; \
*(yy_c_buf_p) = '\0'; \
commentcnvYYleng = yyless_macro_arg; \
} \
while ( 0 )
int commentcnvYYleng
Definition: commentcnv.cpp:294
char * commentcnvYYtext
static char yy_hold_char
Definition: commentcnv.cpp:292
while(1)
std::void_t< T > n
static char * yy_c_buf_p
Definition: commentcnv.cpp:297

Definition at line 3444 of file commentcnv.cpp.

#define yylex   commentcnvYYlex

Definition at line 18 of file commentcnv.cpp.

#define yylineno   commentcnvYYlineno

Definition at line 19 of file commentcnv.cpp.

#define yymore ( )    yymore_used_but_not_detected

Definition at line 1043 of file commentcnv.cpp.

#define yyout   commentcnvYYout

Definition at line 20 of file commentcnv.cpp.

#define yyrealloc   commentcnvYYrealloc

Definition at line 25 of file commentcnv.cpp.

#define yyrestart   commentcnvYYrestart

Definition at line 21 of file commentcnv.cpp.

#define YYSTATE   YY_START

Definition at line 151 of file commentcnv.cpp.

#define YYTABLES_NAME   "yytables"

Definition at line 3642 of file commentcnv.cpp.

#define yyterminate ( )    return YY_NULL

Definition at line 1433 of file commentcnv.cpp.

#define yytext   commentcnvYYtext

Definition at line 22 of file commentcnv.cpp.

#define yytext_ptr   commentcnvYYtext

Definition at line 368 of file commentcnv.cpp.

#define yywrap   commentcnvYYwrap

Definition at line 23 of file commentcnv.cpp.

Typedef Documentation

typedef short int flex_int16_t

Definition at line 71 of file commentcnv.cpp.

typedef int flex_int32_t

Definition at line 72 of file commentcnv.cpp.

typedef signed char flex_int8_t

Definition at line 70 of file commentcnv.cpp.

typedef unsigned short int flex_uint16_t

Definition at line 74 of file commentcnv.cpp.

typedef unsigned int flex_uint32_t

Definition at line 75 of file commentcnv.cpp.

typedef unsigned char flex_uint8_t

Definition at line 73 of file commentcnv.cpp.

Definition at line 172 of file commentcnv.cpp.

typedef unsigned char YY_CHAR

Definition at line 357 of file commentcnv.cpp.

typedef size_t yy_size_t

Definition at line 203 of file commentcnv.cpp.

typedef int yy_state_type

Definition at line 361 of file commentcnv.cpp.

Function Documentation

YY_BUFFER_STATE commentcnvYY_create_buffer ( FILE *  file,
int  size 
)

Allocate and initialize an input buffer state.

Parameters
fileA readable stream.
sizeThe character buffer size in bytes. When in doubt, use YY_BUF_SIZE.
Returns
the allocated buffer state.

Definition at line 3149 of file commentcnv.cpp.

3150 {
3152 
3153  b = (YY_BUFFER_STATE) commentcnvYYalloc(sizeof( struct yy_buffer_state ) );
3154  if ( ! b )
3155  YY_FATAL_ERROR( "out of dynamic memory in commentcnvYY_create_buffer()" );
3156 
3157  b->yy_buf_size = size;
3158 
3159  /* yy_ch_buf has to be 2 characters longer than the size given because
3160  * we need to put in 2 end-of-buffer characters.
3161  */
3162  b->yy_ch_buf = (char *) commentcnvYYalloc(b->yy_buf_size + 2 );
3163  if ( ! b->yy_ch_buf )
3164  YY_FATAL_ERROR( "out of dynamic memory in commentcnvYY_create_buffer()" );
3165 
3166  b->yy_is_our_buffer = 1;
3167 
3169 
3170  return b;
3171 }
static void commentcnvYY_init_buffer(YY_BUFFER_STATE b, FILE *file)
void * commentcnvYYalloc(yy_size_t)
yy_size_t yy_buf_size
Definition: code.cpp:218
decltype(auto) constexpr size(T &&obj)
ADL-aware version of std::size.
Definition: StdUtils.h:92
#define YY_FATAL_ERROR(msg)
char * yy_ch_buf
Definition: code.cpp:212
int yy_is_our_buffer
Definition: code.cpp:229
struct yy_buffer_state * YY_BUFFER_STATE
Definition: commentcnv.cpp:172
static bool * b
Definition: config.cpp:1043
void commentcnvYY_delete_buffer ( YY_BUFFER_STATE  b)

Destroy the buffer.

Parameters
ba buffer created with commentcnvYY_create_buffer()

Definition at line 3177 of file commentcnv.cpp.

3178 {
3179 
3180  if ( ! b )
3181  return;
3182 
3183  if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
3185 
3186  if ( b->yy_is_our_buffer )
3187  commentcnvYYfree((void *) b->yy_ch_buf );
3188 
3189  commentcnvYYfree((void *) b );
3190 }
#define YY_CURRENT_BUFFER_LVALUE
Definition: commentcnv.cpp:289
char * yy_ch_buf
Definition: code.cpp:212
int yy_is_our_buffer
Definition: code.cpp:229
struct yy_buffer_state * YY_BUFFER_STATE
Definition: commentcnv.cpp:172
void commentcnvYYfree(void *)
#define YY_CURRENT_BUFFER
Definition: commentcnv.cpp:282
void commentcnvYY_flush_buffer ( YY_BUFFER_STATE  b)

Discard all buffered characters. On the next scan, YY_INPUT will be called.

Parameters
bthe buffer state to be flushed, usually YY_CURRENT_BUFFER.

Definition at line 3224 of file commentcnv.cpp.

3225 {
3226  if ( ! b )
3227  return;
3228 
3229  b->yy_n_chars = 0;
3230 
3231  /* We always need two end-of-buffer characters. The first causes
3232  * a transition to the end-of-buffer state. The second causes
3233  * a jam in that state.
3234  */
3237 
3238  b->yy_buf_pos = &b->yy_ch_buf[0];
3239 
3240  b->yy_at_bol = 1;
3242 
3243  if ( b == YY_CURRENT_BUFFER )
3245 }
char * yy_buf_pos
Definition: code.cpp:213
int yy_n_chars
Definition: code.cpp:223
static void commentcnvYY_load_buffer_state(void)
char * yy_ch_buf
Definition: code.cpp:212
#define YY_BUFFER_NEW
Definition: commentcnv.cpp:254
int yy_buffer_status
Definition: code.cpp:252
#define YY_END_OF_BUFFER_CHAR
Definition: commentcnv.cpp:159
#define YY_CURRENT_BUFFER
Definition: commentcnv.cpp:282
static void commentcnvYY_init_buffer ( YY_BUFFER_STATE  b,
FILE *  file 
)
static

Definition at line 3196 of file commentcnv.cpp.

3198 {
3199  int oerrno = errno;
3200 
3202 
3203  b->yy_input_file = file;
3204  b->yy_fill_buffer = 1;
3205 
3206  /* If b is the current buffer, then commentcnvYY_init_buffer was _probably_
3207  * called from commentcnvYYrestart() or through yy_get_next_buffer.
3208  * In that case, we don't want to reset the lineno or column.
3209  */
3210  if (b != YY_CURRENT_BUFFER){
3211  b->yy_bs_lineno = 1;
3212  b->yy_bs_column = 0;
3213  }
3214 
3215  b->yy_is_interactive = 0;
3216 
3217  errno = oerrno;
3218 }
FILE * yy_input_file
Definition: code.cpp:210
int yy_fill_buffer
Definition: code.cpp:250
int yy_bs_lineno
Definition: code.cpp:244
int errno
Contains the last error code.
Definition: structcmd.h:53
void commentcnvYY_flush_buffer(YY_BUFFER_STATE b)
int yy_bs_column
Definition: code.cpp:245
int yy_is_interactive
Definition: code.cpp:236
#define YY_CURRENT_BUFFER
Definition: commentcnv.cpp:282
static void commentcnvYY_load_buffer_state ( void  )
static

Definition at line 3135 of file commentcnv.cpp.

3136 {
3137  (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
3138  (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
3139  commentcnvYYin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
3140  (yy_hold_char) = *(yy_c_buf_p);
3141 }
static int yy_n_chars
Definition: commentcnv.cpp:293
static char yy_hold_char
Definition: commentcnv.cpp:292
#define YY_CURRENT_BUFFER_LVALUE
Definition: commentcnv.cpp:289
#define yytext_ptr
Definition: commentcnv.cpp:368
FILE * commentcnvYYin
Definition: commentcnv.cpp:359
static char * yy_c_buf_p
Definition: commentcnv.cpp:297
YY_BUFFER_STATE commentcnvYY_scan_buffer ( char *  base,
yy_size_t  size 
)

Setup the input buffer state to scan directly from a user-specified character buffer.

Parameters
basethe character buffer
sizethe size in bytes of the character buffer
Returns
the newly allocated buffer state object.

Definition at line 3351 of file commentcnv.cpp.

3352 {
3354 
3355  if ( size < 2 ||
3358  /* They forgot to leave room for the EOB's. */
3359  return 0;
3360 
3361  b = (YY_BUFFER_STATE) commentcnvYYalloc(sizeof( struct yy_buffer_state ) );
3362  if ( ! b )
3363  YY_FATAL_ERROR( "out of dynamic memory in commentcnvYY_scan_buffer()" );
3364 
3365  b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
3366  b->yy_buf_pos = b->yy_ch_buf = base;
3367  b->yy_is_our_buffer = 0;
3368  b->yy_input_file = 0;
3369  b->yy_n_chars = b->yy_buf_size;
3370  b->yy_is_interactive = 0;
3371  b->yy_at_bol = 1;
3372  b->yy_fill_buffer = 0;
3374 
3376 
3377  return b;
3378 }
char * yy_buf_pos
Definition: code.cpp:213
FILE * yy_input_file
Definition: code.cpp:210
int yy_n_chars
Definition: code.cpp:223
int yy_fill_buffer
Definition: code.cpp:250
void commentcnvYY_switch_to_buffer(YY_BUFFER_STATE new_buffer)
void * commentcnvYYalloc(yy_size_t)
yy_size_t yy_buf_size
Definition: code.cpp:218
decltype(auto) constexpr size(T &&obj)
ADL-aware version of std::size.
Definition: StdUtils.h:92
#define YY_FATAL_ERROR(msg)
char * yy_ch_buf
Definition: code.cpp:212
#define YY_BUFFER_NEW
Definition: commentcnv.cpp:254
int yy_is_our_buffer
Definition: code.cpp:229
struct yy_buffer_state * YY_BUFFER_STATE
Definition: commentcnv.cpp:172
static bool * b
Definition: config.cpp:1043
int yy_is_interactive
Definition: code.cpp:236
int yy_buffer_status
Definition: code.cpp:252
#define YY_END_OF_BUFFER_CHAR
Definition: commentcnv.cpp:159
YY_BUFFER_STATE commentcnvYY_scan_bytes ( yyconst char *  yybytes,
int  _yybytes_len 
)

Setup the input buffer state to scan the given bytes. The next call to commentcnvYYlex() will scan from a copy of bytes.

Parameters
bytesthe byte buffer to scan
lenthe number of bytes in the buffer pointed to by bytes.
Returns
the newly allocated buffer state object.

Definition at line 3401 of file commentcnv.cpp.

3402 {
3404  char *buf;
3405  yy_size_t n;
3406  int i;
3407 
3408  /* Get memory for full buffer, including space for trailing EOB's. */
3409  n = _yybytes_len + 2;
3410  buf = (char *) commentcnvYYalloc(n );
3411  if ( ! buf )
3412  YY_FATAL_ERROR( "out of dynamic memory in commentcnvYY_scan_bytes()" );
3413 
3414  for ( i = 0; i < _yybytes_len; ++i )
3415  buf[i] = yybytes[i];
3416 
3417  buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
3418 
3419  b = commentcnvYY_scan_buffer(buf,n );
3420  if ( ! b )
3421  YY_FATAL_ERROR( "bad buffer in commentcnvYY_scan_bytes()" );
3422 
3423  /* It's okay to grow etc. this buffer, and we should throw it
3424  * away when we're done.
3425  */
3426  b->yy_is_our_buffer = 1;
3427 
3428  return b;
3429 }
void * commentcnvYYalloc(yy_size_t)
YY_BUFFER_STATE commentcnvYY_scan_buffer(char *base, yy_size_t size)
std::void_t< T > n
#define YY_FATAL_ERROR(msg)
int yy_is_our_buffer
Definition: code.cpp:229
static bool * b
Definition: config.cpp:1043
size_t yy_size_t
Definition: code.cpp:203
#define YY_END_OF_BUFFER_CHAR
Definition: commentcnv.cpp:159
YY_BUFFER_STATE commentcnvYY_scan_string ( yyconst char *  yystr)

Setup the input buffer state to scan a string. The next call to commentcnvYYlex() will scan from a copy of str.

Parameters
yystra NUL-terminated string to scan
Returns
the newly allocated buffer state object.
Note
If you want to scan bytes that may contain NUL values, then use commentcnvYY_scan_bytes() instead.

Definition at line 3388 of file commentcnv.cpp.

3389 {
3390 
3391  return commentcnvYY_scan_bytes(yystr,strlen(yystr) );
3392 }
YY_BUFFER_STATE commentcnvYY_scan_bytes(yyconst char *bytes, int len)
void commentcnvYY_switch_to_buffer ( YY_BUFFER_STATE  new_buffer)

Switch to a different input buffer.

Parameters
new_bufferThe new input buffer.

Definition at line 3104 of file commentcnv.cpp.

3105 {
3106 
3107  /* TODO. We should be able to replace this entire function body
3108  * with
3109  * commentcnvYYpop_buffer_state();
3110  * commentcnvYYpush_buffer_state(new_buffer);
3111  */
3113  if ( YY_CURRENT_BUFFER == new_buffer )
3114  return;
3115 
3116  if ( YY_CURRENT_BUFFER )
3117  {
3118  /* Flush out information for old buffer. */
3119  *(yy_c_buf_p) = (yy_hold_char);
3120  YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
3121  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
3122  }
3123 
3124  YY_CURRENT_BUFFER_LVALUE = new_buffer;
3126 
3127  /* We don't actually know whether we did this switch during
3128  * EOF (commentcnvYYwrap()) processing, but the only time this flag
3129  * is looked at is after commentcnvYYwrap() is called, so it's safe
3130  * to go ahead and always set it.
3131  */
3133 }
static int yy_n_chars
Definition: commentcnv.cpp:293
static void commentcnvYY_load_buffer_state(void)
static void commentcnvYYensure_buffer_stack(void)
static char yy_hold_char
Definition: commentcnv.cpp:292
#define YY_CURRENT_BUFFER_LVALUE
Definition: commentcnv.cpp:289
static int yy_did_buffer_switch_on_eof
Definition: commentcnv.cpp:304
static char * yy_c_buf_p
Definition: commentcnv.cpp:297
#define YY_CURRENT_BUFFER
Definition: commentcnv.cpp:282
void * commentcnvYYalloc ( yy_size_t  size)

Definition at line 3620 of file commentcnv.cpp.

3621 {
3622  return (void *) malloc( size );
3623 }
decltype(auto) constexpr size(T &&obj)
ADL-aware version of std::size.
Definition: StdUtils.h:92
static void commentcnvYYensure_buffer_stack ( void  )
static

Definition at line 3302 of file commentcnv.cpp.

3303 {
3304  int num_to_alloc;
3305 
3306  if (!(yy_buffer_stack)) {
3307 
3308  /* First allocation is just for 2 elements, since we don't know if this
3309  * scanner will even need a stack. We use 2 instead of 1 to avoid an
3310  * immediate realloc on the next call.
3311  */
3312  num_to_alloc = 1;
3314  (num_to_alloc * sizeof(struct yy_buffer_state*)
3315  );
3316  if ( ! (yy_buffer_stack) )
3317  YY_FATAL_ERROR( "out of dynamic memory in commentcnvYYensure_buffer_stack()" );
3318 
3319  memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
3320 
3321  (yy_buffer_stack_max) = num_to_alloc;
3322  (yy_buffer_stack_top) = 0;
3323  return;
3324  }
3325 
3326  if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
3327 
3328  /* Increase the buffer to prepare for a possible push. */
3329  int grow_size = 8 /* arbitrary grow size */;
3330 
3331  num_to_alloc = (yy_buffer_stack_max) + grow_size;
3333  ((yy_buffer_stack),
3334  num_to_alloc * sizeof(struct yy_buffer_state*)
3335  );
3336  if ( ! (yy_buffer_stack) )
3337  YY_FATAL_ERROR( "out of dynamic memory in commentcnvYYensure_buffer_stack()" );
3338 
3339  /* zero only the new slots.*/
3340  memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
3341  (yy_buffer_stack_max) = num_to_alloc;
3342  }
3343 }
static YY_BUFFER_STATE * yy_buffer_stack
Definition: commentcnv.cpp:274
static size_t yy_buffer_stack_top
Definition: commentcnv.cpp:272
void * commentcnvYYalloc(yy_size_t)
static size_t yy_buffer_stack_max
Definition: commentcnv.cpp:273
void * commentcnvYYrealloc(void *, yy_size_t)
#define YY_FATAL_ERROR(msg)
void commentcnvYYfree ( void *  ptr)

Definition at line 3637 of file commentcnv.cpp.

3638 {
3639  free( (char *) ptr ); /* see commentcnvYYrealloc() for (char *) cast */
3640 }
int commentcnvYYget_debug ( void  )

Definition at line 3528 of file commentcnv.cpp.

3529 {
3530  return commentcnvYY_flex_debug;
3531 }
int commentcnvYY_flex_debug
YY_EXTRA_TYPE commentcnvYYget_extra ( void  )
FILE * commentcnvYYget_in ( void  )

Get the input stream.

Definition at line 3472 of file commentcnv.cpp.

3473 {
3474  return commentcnvYYin;
3475 }
FILE * commentcnvYYin
Definition: commentcnv.cpp:359
int commentcnvYYget_leng ( void  )

Get the length of the current token.

Definition at line 3488 of file commentcnv.cpp.

3489 {
3490  return commentcnvYYleng;
3491 }
int commentcnvYYleng
Definition: commentcnv.cpp:294
int commentcnvYYget_lineno ( void  )

Get the current line number.

Definition at line 3463 of file commentcnv.cpp.

3464 {
3465 
3466  return commentcnvYYlineno;
3467 }
int commentcnvYYlineno
Definition: commentcnv.cpp:365
FILE * commentcnvYYget_out ( void  )

Get the output stream.

Definition at line 3480 of file commentcnv.cpp.

3481 {
3482  return commentcnvYYout;
3483 }
FILE * commentcnvYYout
Definition: commentcnv.cpp:359
char * commentcnvYYget_text ( void  )

Get the current token.

Definition at line 3497 of file commentcnv.cpp.

3498 {
3499  return commentcnvYYtext;
3500 }
char * commentcnvYYtext
int commentcnvYYlex ( void  )
int commentcnvYYlex_destroy ( void  )

Definition at line 3572 of file commentcnv.cpp.

3573 {
3574 
3575  /* Pop the buffer stack, destroying each element. */
3576  while(YY_CURRENT_BUFFER){
3578  YY_CURRENT_BUFFER_LVALUE = NULL;
3580  }
3581 
3582  /* Destroy the stack itself. */
3584  (yy_buffer_stack) = NULL;
3585 
3587  (yy_state_buf) = NULL;
3588 
3589  /* Reset the globals. This is important in a non-reentrant scanner so the next time
3590  * commentcnvYYlex() is called, initialization will occur. */
3591  yy_init_globals( );
3592 
3593  return 0;
3594 }
static YY_BUFFER_STATE * yy_buffer_stack
Definition: commentcnv.cpp:274
#define YY_CURRENT_BUFFER_LVALUE
Definition: commentcnv.cpp:289
static int yy_init_globals(void)
void commentcnvYY_delete_buffer(YY_BUFFER_STATE b)
void commentcnvYYpop_buffer_state(void)
static yy_state_type * yy_state_buf
void commentcnvYYfree(void *)
#define YY_CURRENT_BUFFER
Definition: commentcnv.cpp:282
void commentcnvYYpop_buffer_state ( void  )

Removes and deletes the top of the stack, if present. The next element becomes the new top.

Definition at line 3283 of file commentcnv.cpp.

3284 {
3285  if (!YY_CURRENT_BUFFER)
3286  return;
3287 
3289  YY_CURRENT_BUFFER_LVALUE = NULL;
3290  if ((yy_buffer_stack_top) > 0)
3291  --(yy_buffer_stack_top);
3292 
3293  if (YY_CURRENT_BUFFER) {
3296  }
3297 }
static void commentcnvYY_load_buffer_state(void)
static size_t yy_buffer_stack_top
Definition: commentcnv.cpp:272
#define YY_CURRENT_BUFFER_LVALUE
Definition: commentcnv.cpp:289
void commentcnvYY_delete_buffer(YY_BUFFER_STATE b)
static int yy_did_buffer_switch_on_eof
Definition: commentcnv.cpp:304
#define YY_CURRENT_BUFFER
Definition: commentcnv.cpp:282
void commentcnvYYpush_buffer_state ( YY_BUFFER_STATE  new_buffer)

Pushes the new state onto the stack. The new state becomes the current state. This function will allocate the stack if necessary.

Parameters
new_bufferThe new state.

Definition at line 3253 of file commentcnv.cpp.

3254 {
3255  if (new_buffer == NULL)
3256  return;
3257 
3259 
3260  /* This block is copied from commentcnvYY_switch_to_buffer. */
3261  if ( YY_CURRENT_BUFFER )
3262  {
3263  /* Flush out information for old buffer. */
3264  *(yy_c_buf_p) = (yy_hold_char);
3265  YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
3266  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
3267  }
3268 
3269  /* Only push if top exists. Otherwise, replace top. */
3270  if (YY_CURRENT_BUFFER)
3271  (yy_buffer_stack_top)++;
3272  YY_CURRENT_BUFFER_LVALUE = new_buffer;
3273 
3274  /* copied from commentcnvYY_switch_to_buffer. */
3277 }
static int yy_n_chars
Definition: commentcnv.cpp:293
static void commentcnvYY_load_buffer_state(void)
static size_t yy_buffer_stack_top
Definition: commentcnv.cpp:272
static void commentcnvYYensure_buffer_stack(void)
static char yy_hold_char
Definition: commentcnv.cpp:292
#define YY_CURRENT_BUFFER_LVALUE
Definition: commentcnv.cpp:289
static int yy_did_buffer_switch_on_eof
Definition: commentcnv.cpp:304
static char * yy_c_buf_p
Definition: commentcnv.cpp:297
#define YY_CURRENT_BUFFER
Definition: commentcnv.cpp:282
void * commentcnvYYrealloc ( void *  ptr,
yy_size_t  size 
)

Definition at line 3625 of file commentcnv.cpp.

3626 {
3627  /* The cast to (char *) in the following accommodates both
3628  * implementations that use char* generic pointers, and those
3629  * that use void* generic pointers. It works with the latter
3630  * because both ANSI C and C++ allow castless assignment from
3631  * any pointer type to void*, and deal with argument conversions
3632  * as though doing an assignment.
3633  */
3634  return (void *) realloc( (char *) ptr, size );
3635 }
decltype(auto) constexpr size(T &&obj)
ADL-aware version of std::size.
Definition: StdUtils.h:92
void commentcnvYYrestart ( FILE *  input_file)

Immediately switch to a different input stream.

Parameters
input_fileA readable stream.
Note
This function does not reset the start condition to INITIAL .

Definition at line 3087 of file commentcnv.cpp.

3088 {
3089 
3090  if ( ! YY_CURRENT_BUFFER ){
3094  }
3095 
3098 }
static void commentcnvYY_load_buffer_state(void)
static void commentcnvYYensure_buffer_stack(void)
static void commentcnvYY_init_buffer(YY_BUFFER_STATE b, FILE *file)
#define YY_CURRENT_BUFFER_LVALUE
Definition: commentcnv.cpp:289
FILE * commentcnvYYin
Definition: commentcnv.cpp:359
#define YY_BUF_SIZE
Definition: commentcnv.cpp:163
YY_BUFFER_STATE commentcnvYY_create_buffer(FILE *file, int size)
#define YY_CURRENT_BUFFER
Definition: commentcnv.cpp:282
void commentcnvYYset_debug ( int  debug_flag)

Definition at line 3533 of file commentcnv.cpp.

3534 {
3535  commentcnvYY_flex_debug = bdebug ;
3536 }
int commentcnvYY_flex_debug
void commentcnvYYset_extra ( YY_EXTRA_TYPE  user_defined)
void commentcnvYYset_in ( FILE *  in_str)

Set the input stream. This does not discard the current input buffer.

Parameters
in_strA readable stream.
See also
commentcnvYY_switch_to_buffer

Definition at line 3518 of file commentcnv.cpp.

3519 {
3520  commentcnvYYin = in_str ;
3521 }
FILE * commentcnvYYin
Definition: commentcnv.cpp:359
void commentcnvYYset_lineno ( int  line_number)

Set the current line number.

Parameters
line_number

Definition at line 3506 of file commentcnv.cpp.

3507 {
3508 
3509  commentcnvYYlineno = line_number;
3510 }
int commentcnvYYlineno
Definition: commentcnv.cpp:365
void commentcnvYYset_out ( FILE *  out_str)

Definition at line 3523 of file commentcnv.cpp.

3524 {
3525  commentcnvYYout = out_str ;
3526 }
FILE * commentcnvYYout
Definition: commentcnv.cpp:359
static int computeIndent ( const char *  s)
inlinestatic

Definition at line 1180 of file commentcnv.cpp.

1181 {
1182  int col=0;
1183  static int tabSize=Config_getInt("TAB_SIZE");
1184  const char *p=s;
1185  char c;
1186  while ((c=*p++))
1187  {
1188  if (c==' ') col++;
1189  else if (c=='\t') col+=tabSize-(col%tabSize);
1190  else break;
1191  }
1192  return col;
1193 }
#define Config_getInt(val)
Definition: config.cpp:661
p
Definition: test.py:223
static QCString * s
Definition: config.cpp:1042
void convertCppComments ( BufStr inBuf,
BufStr outBuf,
const char *  fileName 
)

This function does three things:

  1. It converts multi-line C++ style comment blocks (that are aligned) to C style comment blocks (if MULTILINE_CPP_IS_BRIEF is set to NO).
  2. It replaces aliases with their definition (see ALIASES)
  3. It handles conditional sections (cond...endcond blocks)

Definition at line 3717 of file commentcnv.cpp.

3718 {
3719  //printf("convertCppComments(%s)\n",fileName);
3720  g_inBuf = inBuf;
3721  g_outBuf = outBuf;
3722  g_inBufPos = 0;
3723  g_col = 0;
3724  g_mlBrief = Config_getBool("MULTILINE_CPP_IS_BRIEF");
3725  g_skip = FALSE;
3726  g_fileName = fileName;
3729  g_lineNr = 1;
3730  g_condStack.clear();
3731  g_condStack.setAutoDelete(TRUE);
3732  g_commentStack.clear();
3733  g_commentStack.setAutoDelete(TRUE);
3734 
3736  isFixedForm = FALSE;
3738  {
3739  isFixedForm = recognizeFixedForm(inBuf->data());
3740  }
3741 
3743  {
3744  g_nestingCount=0;
3745  BEGIN(CComment);
3746  g_commentStack.push(new CommentCtx(g_lineNr));
3747  }
3748  else
3749  {
3750  BEGIN(Scan);
3751  }
3752  commentcnvYYlex();
3753  while (!g_condStack.isEmpty())
3754  {
3755  CondCtx *ctx = g_condStack.pop();
3756  QCString sectionInfo = " ";
3757  if (ctx->sectionId!=" ") sectionInfo.sprintf(" with label %s ",ctx->sectionId.data());
3758  warn(g_fileName,ctx->lineNr,"Conditional section%sdoes not have "
3759  "a corresponding \\endcond command within this file.",sectionInfo.data());
3760  }
3762  {
3763  QCString tmp= "(probable line reference: ";
3764  bool first = TRUE;
3765  while (!g_commentStack.isEmpty())
3766  {
3767  CommentCtx *ctx = g_commentStack.pop();
3768  if (!first) tmp += ", ";
3769  tmp += QCString().setNum(ctx->lineNr);
3770  first = FALSE;
3771  delete ctx;
3772  }
3773  tmp += ")";
3774  warn(g_fileName,g_lineNr,"Reached end of file while still inside a (nested) comment. "
3775  "Nesting level %d %s",g_nestingCount+1,tmp.data()); // add one for "normal" expected end of comment
3776  }
3777  g_commentStack.clear();
3778  g_nestingCount = 0;
3780  {
3781  g_outBuf->at(g_outBuf->curPos())='\0';
3782  msg("-------------\n%s\n-------------\n",g_outBuf->data());
3783  }
3785 }
static BufStr * g_inBuf
char * data() const
Definition: bufstr.h:81
static bool isFixedForm
static bool recognizeFixedForm(const char *contents)
void msg(const char *fmt,...)
Definition: message.cpp:107
void printlex(int dbg, bool enter, const char *lexName, const char *fileName)
Definition: message.cpp:242
static QCString g_fileName
static SrcLangExt g_lang
const bool FALSE
Definition: qglobal.h:370
uint curPos() const
Definition: bufstr.h:97
static bool g_mlBrief
QCString sectionId
#define CComment
static QStack< CommentCtx > g_commentStack
fileName
Definition: dumpTree.py:9
char & at(uint i) const
Definition: bufstr.h:85
static int g_nestingCount
static int g_col
static QStack< CondCtx > g_condStack
#define Scan
const char * data() const
Definition: qcstring.h:207
string tmp
Definition: languages.py:63
#define Config_getBool(val)
Definition: config.cpp:664
static int g_inBufPos
void warn(const char *file, int line, const char *fmt,...)
Definition: message.cpp:183
static bool g_pythonDocString
static int g_lineNr
QCString & sprintf(const char *format,...)
Definition: qcstring.cpp:27
QCString & setNum(short n)
Definition: qcstring.cpp:469
#define BEGIN
Definition: commentcnv.cpp:144
SrcLangExt getLanguageFromFileName(const QCString fileName)
Definition: util.cpp:7061
int commentcnvYY_flex_debug
static bool isFlagSet(DebugMask mask)
Definition: debug.cpp:119
static BufStr * g_outBuf
int commentcnvYYlex(void)
const bool TRUE
Definition: qglobal.h:371
static bool g_skip
static void copyToOutput ( const char *  s,
int  len 
)
inlinestatic

Definition at line 1195 of file commentcnv.cpp.

1196 {
1197  int i;
1198  if (g_skip) // only add newlines.
1199  {
1200  for (i=0;i<len;i++)
1201  {
1202  if (s[i]=='\n')
1203  {
1204  ADDCHAR('\n');
1205  //fprintf(stderr,"---> skip %d\n",g_lineNr);
1206  g_lineNr++;
1207  }
1208  }
1209  }
1210  else if (len>0)
1211  {
1212  ADDARRAY(s,len);
1213  static int tabSize=Config_getInt("TAB_SIZE");
1214  for (i=0;i<len;i++)
1215  {
1216  switch (s[i])
1217  {
1218  case '\n': g_col=0;
1219  //fprintf(stderr,"---> copy %d\n",g_lineNr);
1220  g_lineNr++; break;
1221  case '\t': g_col+=tabSize-(g_col%tabSize); break;
1222  default: g_col++; break;
1223  }
1224  }
1225  }
1226 }
#define ADDARRAY(a, s)
#define Config_getInt(val)
Definition: config.cpp:661
static int g_col
#define ADDCHAR(c)
static int g_lineNr
static QCString * s
Definition: config.cpp:1042
static bool g_skip
static void endCondSection ( )
static

Definition at line 1240 of file commentcnv.cpp.

1241 {
1242  if (g_condStack.isEmpty())
1243  {
1244  warn(g_fileName,g_lineNr,"Found \\endcond command without matching \\cond");
1245  g_skip=FALSE;
1246  }
1247  else
1248  {
1249  CondCtx *ctx = g_condStack.pop();
1250  g_skip=ctx->skip;
1251  }
1252  //printf("endCondSection: skip=%d stack=%d\n",g_skip,g_condStack.count());
1253 }
static QCString g_fileName
const bool FALSE
Definition: qglobal.h:370
static QStack< CondCtx > g_condStack
void warn(const char *file, int line, const char *fmt,...)
Definition: message.cpp:183
static int g_lineNr
static bool g_skip
if ( yy_init)

Definition at line 1490 of file commentcnv.cpp.

1491  {
1492  (yy_init) = 1;
1493 
1494 #ifdef YY_USER_INIT
1495  YY_USER_INIT;
1496 #endif
1497 
1498  /* Create the reject buffer large enough to save one state per allowed character. */
1499  if ( ! (yy_state_buf) )
1501  if ( ! (yy_state_buf) )
1502  YY_FATAL_ERROR( "out of dynamic memory in commentcnvYYlex()" );
1503 
1504  if ( ! (yy_start) )
1505  (yy_start) = 1; /* first start state */
1506 
1507  if ( ! commentcnvYYin )
1508  commentcnvYYin = stdin;
1509 
1510  if ( ! commentcnvYYout )
1512 
1513  if ( ! YY_CURRENT_BUFFER ) {
1517  }
1518 
1520  }
static void commentcnvYY_load_buffer_state(void)
static void commentcnvYYensure_buffer_stack(void)
void * commentcnvYYalloc(yy_size_t)
#define YY_CURRENT_BUFFER_LVALUE
Definition: commentcnv.cpp:289
int yy_state_type
Definition: code.cpp:361
FILE * commentcnvYYin
Definition: commentcnv.cpp:359
#define YY_BUF_SIZE
Definition: commentcnv.cpp:163
FILE * commentcnvYYout
Definition: commentcnv.cpp:359
#define YY_FATAL_ERROR(msg)
static int yy_start
Definition: commentcnv.cpp:299
static int yy_init
Definition: commentcnv.cpp:298
#define YY_STATE_BUF_SIZE
Definition: commentcnv.cpp:168
YY_BUFFER_STATE commentcnvYY_create_buffer(FILE *file, int size)
static yy_state_type * yy_state_buf
#define YY_CURRENT_BUFFER
Definition: commentcnv.cpp:282
static bool recognizeFixedForm ( const char *  contents)
static

Definition at line 3674 of file commentcnv.cpp.

3675 {
3676  int column=0;
3677  bool skipLine=FALSE;
3678 
3679  for(int i=0;;i++) {
3680  column++;
3681 
3682  switch(contents[i]) {
3683  case '\n':
3684  column=0;
3685  skipLine=FALSE;
3686  break;
3687  case ' ':
3688  break;
3689  case '\000':
3690  return FALSE;
3691  case 'C':
3692  case 'c':
3693  case '*':
3694  if(column==1) return TRUE;
3695  if(skipLine) break;
3696  return FALSE;
3697  case '!':
3698  if(column>1 && column<7) return FALSE;
3699  skipLine=TRUE;
3700  break;
3701  default:
3702  if(skipLine) break;
3703  if(column==7) return TRUE;
3704  return FALSE;
3705  }
3706  }
3707  return FALSE;
3708 }
const bool FALSE
Definition: qglobal.h:370
std::vector< std::string > column
const bool TRUE
Definition: qglobal.h:371
static void replaceAliases ( const char *  s)
static

copies string s with length len to the output, while replacing any alias commands found in the string.

Definition at line 1258 of file commentcnv.cpp.

1259 {
1261  //printf("replaceAliases(%s)->'%s'\n",s,result.data());
1262  copyToOutput(result,result.length());
1263 }
static void copyToOutput(const char *s, int len)
static QCString result
uint length() const
Definition: qcstring.h:195
QCString resolveAliasCmd(const QCString aliasCmd)
Definition: util.cpp:7562
static QCString * s
Definition: config.cpp:1042
void replaceComment ( int  offset)

Definition at line 3648 of file commentcnv.cpp.

3649 {
3650  if (g_mlBrief || g_skip)
3651  {
3653  }
3654  else
3655  {
3656  //printf("replaceComment(%s)\n",commentcnvYYtext);
3657  int i=computeIndent(&commentcnvYYtext[offset]);
3658  if (i==g_blockHeadCol)
3659  {
3661  }
3662  else
3663  {
3664  copyToOutput(" */",3);
3665  int i;for (i=(int)commentcnvYYleng-1;i>=0;i--) unput(commentcnvYYtext[i]);
3667  BEGIN(Scan);
3668  }
3669  }
3670 }
static void copyToOutput(const char *s, int len)
int commentcnvYYleng
Definition: commentcnv.cpp:294
char * commentcnvYYtext
const bool FALSE
Definition: qglobal.h:370
static int computeIndent(const char *s)
static bool g_mlBrief
#define Scan
#define unput(c)
Definition: commentcnv.cpp:199
static int g_blockHeadCol
#define BEGIN
Definition: commentcnv.cpp:144
static void replaceCommentMarker(const char *s, int len)
static bool g_inSpecialComment
static bool g_skip
static void replaceCommentMarker ( const char *  s,
int  len 
)
static

Definition at line 1139 of file commentcnv.cpp.

1140 {
1141  const char *p=s;
1142  char c;
1143  // copy leading blanks
1144  while ((c=*p) && (c==' ' || c=='\t' || c=='\n'))
1145  {
1146  ADDCHAR(c);
1147  g_lineNr += c=='\n';
1148  p++;
1149  }
1150  // replace start of comment marker by blanks and the last character by a *
1151  int blanks=0;
1152  while ((c=*p) && (c=='/' || c=='!' || c=='#'))
1153  {
1154  blanks++;
1155  p++;
1156  if (*p=='<') // comment-after-item marker
1157  {
1158  blanks++;
1159  p++;
1160  }
1161  if (c=='!') // end after first !
1162  {
1163  break;
1164  }
1165  }
1166  if (blanks>0)
1167  {
1168  while (blanks>2)
1169  {
1170  ADDCHAR(' ');
1171  blanks--;
1172  }
1173  if (blanks>1) ADDCHAR('*');
1174  ADDCHAR(' ');
1175  }
1176  // copy comment line to output
1177  ADDARRAY(p,len-(int)(p-s));
1178 }
#define ADDARRAY(a, s)
p
Definition: test.py:223
#define ADDCHAR(c)
static int g_lineNr
static QCString * s
Definition: config.cpp:1042
static void startCondSection ( const char *  sectId)
static

Definition at line 1228 of file commentcnv.cpp.

1229 {
1230  //printf("startCondSection: skip=%d stack=%d\n",g_skip,g_condStack.count());
1231  CondParser prs;
1232  bool expResult = prs.parse(g_fileName,g_lineNr,sectId);
1233  g_condStack.push(new CondCtx(g_lineNr,sectId,g_skip));
1234  if (!expResult) // not enabled
1235  {
1236  g_skip=TRUE;
1237  }
1238 }
static QCString g_fileName
static QStack< CondCtx > g_condStack
static int g_lineNr
bool parse(const char *fileName, int lineNr, const char *expr)
Definition: condparser.cpp:34
const bool TRUE
Definition: qglobal.h:371
static bool g_skip
while ( )

Definition at line 1522 of file commentcnv.cpp.

1523  {
1524  yy_cp = (yy_c_buf_p);
1525 
1526  /* Support of commentcnvYYtext. */
1527  *yy_cp = (yy_hold_char);
1528 
1529  /* yy_bp points to the position in yy_ch_buf of the start of
1530  * the current run.
1531  */
1532  yy_bp = yy_cp;
1533 
1534  yy_current_state = (yy_start);
1535  yy_current_state += YY_AT_BOL();
1536 
1537  (yy_state_ptr) = (yy_state_buf);
1538  *(yy_state_ptr)++ = yy_current_state;
1539 
1540 yy_match:
1541  do
1542  {
1543  register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
1544  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1545  {
1546  yy_current_state = (int) yy_def[yy_current_state];
1547  if ( yy_current_state >= 411 )
1548  yy_c = yy_meta[(unsigned int) yy_c];
1549  }
1550  yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
1551  *(yy_state_ptr)++ = yy_current_state;
1552  ++yy_cp;
1553  }
1554  while ( yy_current_state != 410 );
1555 
1556 yy_find_action:
1557  yy_current_state = *--(yy_state_ptr);
1558  (yy_lp) = yy_accept[yy_current_state];
1559 find_rule: /* we branch to this label when backing up */
1560  for ( ; ; ) /* until we find what rule we matched */
1561  {
1562  if ( (yy_lp) && (yy_lp) < yy_accept[yy_current_state + 1] )
1563  {
1564  yy_act = yy_acclist[(yy_lp)];
1565  if ( yy_act & YY_TRAILING_HEAD_MASK ||
1567  {
1569  {
1572  break;
1573  }
1574  }
1575  else if ( yy_act & YY_TRAILING_MASK )
1576  {
1577  (yy_looking_for_trail_begin) = yy_act & ~YY_TRAILING_MASK;
1579  (yy_full_match) = yy_cp;
1581  (yy_full_lp) = (yy_lp);
1582  }
1583  else
1584  {
1585  (yy_full_match) = yy_cp;
1587  (yy_full_lp) = (yy_lp);
1588  break;
1589  }
1590  ++(yy_lp);
1591  goto find_rule;
1592  }
1593  --yy_cp;
1594  yy_current_state = *--(yy_state_ptr);
1595  (yy_lp) = yy_accept[yy_current_state];
1596  }
1597 
1599 
1600 do_action: /* This label is used only to access EOF actions. */
1601 
1602  switch ( yy_act )
1603  { /* beginning of action switch */
1604 case 1:
1606 #line 251 "commentcnv.l"
1607 { /* eat anything that is not " / , or \n */
1609  }
1610  YY_BREAK
1611 case 2:
1613 #line 254 "commentcnv.l"
1614 { /* eat , so we have a nice separator in long initialization lines */
1616  }
1617  YY_BREAK
1618 case 3:
1620 #line 257 "commentcnv.l"
1621 { /* start of python long comment */
1623  {
1624  REJECT;
1625  }
1626  else
1627  {
1629  g_nestingCount=0;
1630  g_commentStack.clear(); /* to be on the save side */
1632  BEGIN(CComment);
1633  g_commentStack.push(new CommentCtx(g_lineNr));
1634  }
1635  }
1636  YY_BREAK
1637 case 4:
1638 /* rule 4 can match eol */
1639 *yy_cp = (yy_hold_char); /* undo effects of setting up commentcnvYYtext */
1640 (yy_c_buf_p) = yy_cp = yy_bp + 2;
1641 YY_DO_BEFORE_ACTION; /* set up commentcnvYYtext again */
1643 #line 272 "commentcnv.l"
1644 {
1646  {
1647  REJECT;
1648  }
1649  else
1650  {
1652  g_nestingCount=0;
1653  g_commentStack.clear(); /* to be on the save side */
1654  BEGIN(CComment);
1655  g_commentStack.push(new CommentCtx(g_lineNr));
1656  }
1657  }
1658  YY_BREAK
1659 case 5:
1660 /* rule 5 can match eol */
1661 *yy_cp = (yy_hold_char); /* undo effects of setting up commentcnvYYtext */
1662 (yy_c_buf_p) = yy_cp = yy_bp + 2;
1663 YY_DO_BEFORE_ACTION; /* set up commentcnvYYtext again */
1665 #line 286 "commentcnv.l"
1666 {
1668  {
1669  REJECT;
1670  }
1671  else
1672  {
1673  /* check for fixed format; we might have some conditional as part of multilene if like C<5 .and. & */
1674  if (isFixedForm && (g_col == 0))
1675  {
1677  g_nestingCount=0;
1678  g_commentStack.clear(); /* to be on the save side */
1679  BEGIN(CComment);
1680  g_commentStack.push(new CommentCtx(g_lineNr));
1681  }
1682  else
1683  {
1684  REJECT;
1685  }
1686  }
1687  }
1688  YY_BREAK
1689 case 6:
1690 /* rule 6 can match eol */
1692 #line 308 "commentcnv.l"
1693 {
1695  {
1696  REJECT;
1697  }
1698  else
1699  {
1701  }
1702  }
1703  YY_BREAK
1704 case 7:
1705 /* rule 7 can match eol */
1707 #line 318 "commentcnv.l"
1708 {
1710  {
1711  REJECT;
1712  }
1713  else
1714  {
1715  if (g_col == 0)
1716  {
1718  }
1719  else
1720  {
1721  REJECT;
1722  }
1723  }
1724  }
1725  YY_BREAK
1726 case 8:
1728 #line 335 "commentcnv.l"
1729 { /* start of a string */
1732  BEGIN(SkipString);
1733  }
1734  YY_BREAK
1735 case 9:
1737 #line 340 "commentcnv.l"
1738 {
1741  if (g_lang!=SrcLangExt_VHDL)
1742  {
1743  BEGIN(SkipChar);
1744  }
1745  }
1746  YY_BREAK
1747 case 10:
1748 /* rule 10 can match eol */
1750 #line 348 "commentcnv.l"
1751 { /* new line */
1753  }
1754  YY_BREAK
1755 case 11:
1756 /* rule 11 can match eol */
1757 *yy_cp = (yy_hold_char); /* undo effects of setting up commentcnvYYtext */
1758 (yy_c_buf_p) = yy_cp = yy_bp + 3;
1759 YY_DO_BEFORE_ACTION; /* set up commentcnvYYtext again */
1760 #line 352 "commentcnv.l"
1761 case 12:
1762 /* rule 12 can match eol */
1764 #line 352 "commentcnv.l"
1765 { /* start C++ style special comment block */
1766  if (g_mlBrief)
1767  {
1768  REJECT; // bail out if we do not need to convert
1769  }
1770  else
1771  {
1772  int i=3;
1773  if (commentcnvYYtext[2]=='/')
1774  {
1775  while (i<(int)commentcnvYYleng && commentcnvYYtext[i]=='/') i++;
1776  }
1778  copyToOutput("/**",3);
1781  //BEGIN(SComment);
1783  BEGIN(ReadLine);
1784  }
1785  }
1786  YY_BREAK
1787 case 13:
1788 /* rule 13 can match eol */
1789 *yy_cp = (yy_hold_char); /* undo effects of setting up commentcnvYYtext */
1790 (yy_c_buf_p) = yy_cp -= 1;
1791 YY_DO_BEFORE_ACTION; /* set up commentcnvYYtext again */
1793 #line 373 "commentcnv.l"
1794 { /* Start of Rational Rose ANSI C++ comment block */
1795  if (g_mlBrief) REJECT;
1796  int i=17; //=strlen("//##Documentation");
1798  copyToOutput("/**",3);
1801  BEGIN(SComment);
1802  }
1803  YY_BREAK
1804 case 14:
1805 /* rule 14 can match eol */
1806 *yy_cp = (yy_hold_char); /* undo effects of setting up commentcnvYYtext */
1807 (yy_c_buf_p) = yy_cp = yy_bp + 2;
1808 YY_DO_BEFORE_ACTION; /* set up commentcnvYYtext again */
1810 #line 382 "commentcnv.l"
1811 { /* one line C++ comment */
1815  BEGIN(ReadLine);
1816  }
1817  YY_BREAK
1818 case 15:
1820 #line 388 "commentcnv.l"
1821 { /* avoid matching next rule for empty C comment, see bug 711723 */
1823  }
1824  YY_BREAK
1825 case 16:
1827 #line 391 "commentcnv.l"
1828 { /* start of a C comment */
1830  g_nestingCount=0;
1831  g_commentStack.clear(); /* to be on the save side */
1833  BEGIN(CComment);
1834  g_commentStack.push(new CommentCtx(g_lineNr));
1835  }
1836  YY_BREAK
1837 case 17:
1839 #line 399 "commentcnv.l"
1840 {
1842  {
1843  REJECT;
1844  }
1845  else
1846  {
1848  g_nestingCount=0;
1849  g_commentStack.clear(); /* to be on the save side */
1850  BEGIN(CComment);
1851  g_commentStack.push(new CommentCtx(g_lineNr));
1852  }
1853  }
1854  YY_BREAK
1855 case 18:
1857 #line 413 "commentcnv.l"
1858 {
1859  if (g_lang!=SrcLangExt_VHDL)
1860  {
1861  REJECT;
1862  }
1863  else
1864  {
1866  g_nestingCount=0;
1867  g_commentStack.clear(); /* to be on the save side */
1868  BEGIN(CComment);
1869  g_commentStack.push(new CommentCtx(g_lineNr));
1870  }
1871  }
1872  YY_BREAK
1873 case 19:
1875 #line 427 "commentcnv.l"
1876 {
1878  {
1879  REJECT;
1880  }
1881  else
1882  {
1884  g_nestingCount=0;
1885  g_commentStack.clear(); /* to be on the save side */
1886  BEGIN(CComment);
1887  g_commentStack.push(new CommentCtx(g_lineNr));
1888  }
1889  }
1890  YY_BREAK
1891 case 20:
1892 /* rule 20 can match eol */
1893 *yy_cp = (yy_hold_char); /* undo effects of setting up commentcnvYYtext */
1894 (yy_c_buf_p) = yy_cp = yy_bp + 6;
1895 YY_DO_BEFORE_ACTION; /* set up commentcnvYYtext again */
1897 #line 441 "commentcnv.l"
1898 {
1899  copyToOutput("@code",5);
1901  g_javaBlock=1;
1904  }
1905  YY_BREAK
1906 case 21:
1907 /* rule 21 can match eol */
1908 *yy_cp = (yy_hold_char); /* undo effects of setting up commentcnvYYtext */
1909 (yy_c_buf_p) = yy_cp -= 1;
1910 YY_DO_BEFORE_ACTION; /* set up commentcnvYYtext again */
1912 #line 448 "commentcnv.l"
1913 { /* start of a verbatim block */
1916  g_javaBlock=0;
1917  if (qstrcmp(&commentcnvYYtext[1],"startuml")==0)
1918  {
1919  g_blockName="uml";
1920  }
1921  else
1922  {
1924  }
1926  }
1927  YY_BREAK
1928 case 22:
1930 #line 462 "commentcnv.l"
1931 {
1934  if (g_blockName.at(1)=='[')
1935  {
1936  g_blockName.at(1)=']';
1937  }
1938  else if (g_blockName.at(1)=='{')
1939  {
1940  g_blockName.at(1)='}';
1941  }
1943  BEGIN(Verbatim);
1944  }
1945  YY_BREAK
1946 case 23:
1947 /* rule 23 can match eol */
1948 *yy_cp = (yy_hold_char); /* undo effects of setting up commentcnvYYtext */
1949 (yy_c_buf_p) = yy_cp -= 1;
1950 YY_DO_BEFORE_ACTION; /* set up commentcnvYYtext again */
1952 #line 476 "commentcnv.l"
1953 { /* start of a verbatim block */
1957  BEGIN(Verbatim);
1958  }
1959  YY_BREAK
1960 case 24:
1962 #line 482 "commentcnv.l"
1963 { /* any ather character */
1965  }
1966  YY_BREAK
1967 case 25:
1969 #line 485 "commentcnv.l"
1970 { /* end of verbatim block */
1972  if (commentcnvYYtext[1]=='f') // end of formula
1973  {
1975  }
1976  else if (&commentcnvYYtext[4]==g_blockName)
1977  {
1979  }
1980  }
1981  YY_BREAK
1982 case 26:
1984 #line 496 "commentcnv.l"
1985 {
1986  if (g_javaBlock==0)
1987  {
1988  REJECT;
1989  }
1990  else
1991  {
1992  g_javaBlock++;
1994  }
1995  }
1996  YY_BREAK
1997 case 27:
1999 #line 507 "commentcnv.l"
2000 {
2001  if (g_javaBlock==0)
2002  {
2003  REJECT;
2004  }
2005  else
2006  {
2007  g_javaBlock--;
2008  if (g_javaBlock==0)
2009  {
2010  copyToOutput(" @endcode ",10);
2012  }
2013  else
2014  {
2016  }
2017  }
2018  }
2019  YY_BREAK
2020 case 28:
2022 #line 526 "commentcnv.l"
2023 { /* end of verbatim block */
2025  if (&commentcnvYYtext[4]==g_blockName)
2026  {
2028  }
2029  }
2030  YY_BREAK
2031 case 29:
2033 #line 533 "commentcnv.l"
2034 { /* skip leading comments */
2035  if (!g_inSpecialComment)
2036  {
2038  }
2039  else
2040  {
2041  int l=0;
2042  while (commentcnvYYtext[l]==' ' || commentcnvYYtext[l]=='\t')
2043  {
2044  l++;
2045  }
2047  if (commentcnvYYleng-l==3) // ends with //! or ///
2048  {
2049  copyToOutput(" * ",3);
2050  }
2051  else // ends with //
2052  {
2053  copyToOutput("//",2);
2054  }
2055  }
2056  }
2057  YY_BREAK
2058 case 30:
2060 #line 556 "commentcnv.l"
2061 { /* any character not a backslash or new line or } */
2063  }
2064  YY_BREAK
2065 case 31:
2066 /* rule 31 can match eol */
2068 #line 559 "commentcnv.l"
2069 { /* new line in verbatim block */
2071  }
2072  YY_BREAK
2073 case 32:
2075 #line 562 "commentcnv.l"
2076 {
2077  if (g_blockName=="dot" || g_blockName=="msc" || g_blockName=="uml" || g_blockName.at(0)=='f')
2078  {
2079  // see bug 487871, strip /// from dot images and formulas.
2080  int l=0;
2081  while (commentcnvYYtext[l]==' ' || commentcnvYYtext[l]=='\t')
2082  {
2083  l++;
2084  }
2086  copyToOutput(" ",3);
2087  }
2088  else // even slashes are verbatim (e.g. \verbatim, \code)
2089  {
2090  REJECT;
2091  }
2092  }
2093  YY_BREAK
2094 case 33:
2096 #line 579 "commentcnv.l"
2097 { /* any other character */
2099  }
2100  YY_BREAK
2101 case 34:
2103 #line 582 "commentcnv.l"
2104 { /* escaped character in string */
2106  }
2107  YY_BREAK
2108 case 35:
2110 #line 585 "commentcnv.l"
2111 { /* end of string */
2114  }
2115  YY_BREAK
2116 case 36:
2118 #line 589 "commentcnv.l"
2119 { /* any other string character */
2121  }
2122  YY_BREAK
2123 case 37:
2124 /* rule 37 can match eol */
2126 #line 592 "commentcnv.l"
2127 { /* new line inside string (illegal for some compilers) */
2129  }
2130  YY_BREAK
2131 case 38:
2133 #line 595 "commentcnv.l"
2134 { /* escaped character */
2136  }
2137  YY_BREAK
2138 case 39:
2140 #line 598 "commentcnv.l"
2141 { /* end of character literal */
2144  }
2145  YY_BREAK
2146 case 40:
2148 #line 602 "commentcnv.l"
2149 { /* any other string character */
2151  }
2152  YY_BREAK
2153 case 41:
2154 /* rule 41 can match eol */
2156 #line 605 "commentcnv.l"
2157 { /* new line character */
2159  }
2160  YY_BREAK
2161 case 42:
2163 #line 609 "commentcnv.l"
2164 { /* anything that is not a '*' or command */
2166  }
2167  YY_BREAK
2168 case 43:
2170 #line 612 "commentcnv.l"
2171 { /* stars without slashes */
2173  }
2174  YY_BREAK
2175 case 44:
2177 #line 615 "commentcnv.l"
2178 { /* end of Python docstring */
2180  {
2181  REJECT;
2182  }
2183  else
2184  {
2187  BEGIN(Scan);
2188  }
2189  }
2190  YY_BREAK
2191 case 45:
2192 /* rule 45 can match eol */
2194 #line 627 "commentcnv.l"
2195 { /* new line in comment */
2197  /* in case of Fortran always end of comment */
2199  {
2200  BEGIN(Scan);
2201  }
2202  }
2203  YY_BREAK
2204 case 46:
2206 #line 635 "commentcnv.l"
2207 { /* nested C comment */
2208  g_nestingCount++;
2209  g_commentStack.push(new CommentCtx(g_lineNr));
2211  }
2212  YY_BREAK
2213 case 47:
2215 #line 640 "commentcnv.l"
2216 { /* end of C comment */
2218  {
2219  REJECT;
2220  }
2221  else
2222  {
2224  if (g_nestingCount<=0)
2225  {
2226  BEGIN(Scan);
2227  }
2228  else
2229  {
2230  g_nestingCount--;
2231  delete g_commentStack.pop();
2232  }
2233  }
2234  }
2235  YY_BREAK
2236 case 48:
2237 /* rule 48 can match eol */
2238 *yy_cp = (yy_hold_char); /* undo effects of setting up commentcnvYYtext */
2239 (yy_c_buf_p) = yy_cp = yy_bp + 1;
2240 YY_DO_BEFORE_ACTION; /* set up commentcnvYYtext again */
2242 #line 659 "commentcnv.l"
2243 { /* end of Python comment */
2245  {
2246  REJECT;
2247  }
2248  else
2249  {
2251  BEGIN(Scan);
2252  }
2253  }
2254  YY_BREAK
2255 case 49:
2256 /* rule 49 can match eol */
2257 *yy_cp = (yy_hold_char); /* undo effects of setting up commentcnvYYtext */
2258 (yy_c_buf_p) = yy_cp = yy_bp + 1;
2259 YY_DO_BEFORE_ACTION; /* set up commentcnvYYtext again */
2261 #line 670 "commentcnv.l"
2262 { /* end of VHDL comment */
2263  if (g_lang!=SrcLangExt_VHDL)
2264  {
2265  REJECT;
2266  }
2267  else
2268  {
2270  BEGIN(Scan);
2271  }
2272  }
2273  YY_BREAK
2274 /* removed for bug 674842 (bug was introduced in rev 768)
2275 <CComment>"'" {
2276  g_charContext = YY_START;
2277  copyToOutput(commentcnvYYtext,(int)commentcnvYYleng);
2278  BEGIN(SkipChar);
2279  }
2280 <CComment>"\"" {
2281  g_stringContext = YY_START;
2282  copyToOutput(commentcnvYYtext,(int)commentcnvYYleng);
2283  BEGIN(SkipString);
2284  }
2285  */
2286 case 50:
2288 #line 693 "commentcnv.l"
2289 {
2291  }
2292  YY_BREAK
2293 case 51:
2294 /* rule 51 can match eol */
2295 *yy_cp = (yy_hold_char); /* undo effects of setting up commentcnvYYtext */
2296 (yy_c_buf_p) = yy_cp -= 1;
2297 YY_DO_BEFORE_ACTION; /* set up commentcnvYYtext again */
2299 #line 696 "commentcnv.l"
2300 {
2301  replaceComment(0);
2302  }
2303  YY_BREAK
2304 case 52:
2305 /* rule 52 can match eol */
2306 *yy_cp = (yy_hold_char); /* undo effects of setting up commentcnvYYtext */
2307 (yy_c_buf_p) = yy_cp -= 1;
2308 YY_DO_BEFORE_ACTION; /* set up commentcnvYYtext again */
2310 #line 699 "commentcnv.l"
2311 {
2312  replaceComment(1);
2313  }
2314  YY_BREAK
2315 case 53:
2316 /* rule 53 can match eol */
2318 #line 702 "commentcnv.l"
2319 {
2320  replaceComment(0);
2322  BEGIN(ReadLine);
2323  }
2324  YY_BREAK
2325 case 54:
2326 /* rule 54 can match eol */
2328 #line 707 "commentcnv.l"
2329 {
2330  /* See Bug 752712: end the multiline comment when finding a @} or \} command */
2331  copyToOutput(" */",3);
2335  BEGIN(Scan);
2336  }
2337  YY_BREAK
2338 case 55:
2339 /* rule 55 can match eol */
2341 #line 715 "commentcnv.l"
2342 {
2343  replaceComment(1);
2345  BEGIN(ReadLine);
2346  }
2347  YY_BREAK
2348 case 56:
2349 #line 721 "commentcnv.l"
2350 case 57:
2351 /* rule 57 can match eol */
2352 #line 722 "commentcnv.l"
2353 case 58:
2354 /* rule 58 can match eol */
2356 #line 722 "commentcnv.l"
2357 { // or //!something
2358  replaceComment(0);
2360  BEGIN(ReadLine);
2361  }
2362  YY_BREAK
2363 case 59:
2364 /* rule 59 can match eol */
2365 #line 728 "commentcnv.l"
2366 case 60:
2367 /* rule 60 can match eol */
2368 #line 729 "commentcnv.l"
2369 case 61:
2370 /* rule 61 can match eol */
2372 #line 729 "commentcnv.l"
2373 {
2374  replaceComment(1);
2376  BEGIN(ReadLine);
2377  }
2378  YY_BREAK
2379 case 62:
2380 /* rule 62 can match eol */
2382 #line 734 "commentcnv.l"
2383 {
2384  if (!g_inRoseComment)
2385  {
2386  REJECT;
2387  }
2388  else
2389  {
2390  replaceComment(0);
2392  BEGIN(ReadLine);
2393  }
2394  }
2395  YY_BREAK
2396 case 63:
2397 /* rule 63 can match eol */
2399 #line 746 "commentcnv.l"
2400 {
2401  if (!g_inRoseComment)
2402  {
2403  REJECT;
2404  }
2405  else
2406  {
2407  replaceComment(1);
2409  BEGIN(ReadLine);
2410  }
2411  }
2412  YY_BREAK
2413 case 64:
2414 /* rule 64 can match eol */
2416 #line 758 "commentcnv.l"
2417 { /* end of special comment */
2418  copyToOutput(" */",3);
2422  BEGIN(Scan);
2423  }
2424  YY_BREAK
2425 case 65:
2426 /* rule 65 can match eol */
2427 *yy_cp = (yy_hold_char); /* undo effects of setting up commentcnvYYtext */
2428 (yy_c_buf_p) = yy_cp -= 1;
2429 YY_DO_BEFORE_ACTION; /* set up commentcnvYYtext again */
2431 #line 765 "commentcnv.l"
2432 {
2435  }
2436  YY_BREAK
2437 case 66:
2439 #line 769 "commentcnv.l"
2440 { // escaped command
2442  }
2443  YY_BREAK
2444 case 67:
2445 /* rule 67 can match eol */
2446 *yy_cp = (yy_hold_char); /* undo effects of setting up commentcnvYYtext */
2447 (yy_c_buf_p) = yy_cp = yy_bp + 5;
2448 YY_DO_BEFORE_ACTION; /* set up commentcnvYYtext again */
2450 #line 772 "commentcnv.l"
2451 { // conditional section
2452  g_condCtx = YY_START;
2453  BEGIN(CondLine);
2454  }
2455  YY_BREAK
2456 case 68:
2457 /* rule 68 can match eol */
2458 *yy_cp = (yy_hold_char); /* undo effects of setting up commentcnvYYtext */
2459 (yy_c_buf_p) = yy_cp = yy_bp + 8;
2460 YY_DO_BEFORE_ACTION; /* set up commentcnvYYtext again */
2462 #line 776 "commentcnv.l"
2463 { // end of conditional section
2464  bool oldSkip=g_skip;
2465  endCondSection();
2466  if (YY_START==CComment && oldSkip && !g_skip)
2467  {
2468  //printf("** Adding start of comment!\n");
2469  if (g_lang!=SrcLangExt_Python &&
2473  {
2474  ADDCHAR('/');
2475  ADDCHAR('*');
2476  if (g_specialComment)
2477  {
2478  ADDCHAR('*');
2479  }
2480  }
2481  }
2482  }
2483  YY_BREAK
2484 case 69:
2486 #line 796 "commentcnv.l"
2487 {
2488  bool oldSkip=g_skip;
2490  if ((g_condCtx==CComment || g_readLineCtx==SComment) &&
2491  !oldSkip && g_skip)
2492  {
2493  if (g_lang!=SrcLangExt_Python &&
2497  {
2498  ADDCHAR('*');
2499  ADDCHAR('/');
2500  }
2501  }
2502  if (g_readLineCtx==SComment)
2503  {
2504  BEGIN(SComment);
2505  }
2506  else
2507  {
2508  BEGIN(g_condCtx);
2509  }
2510  }
2511  YY_BREAK
2512 case 70:
2514 #line 820 "commentcnv.l"
2515 
2516  YY_BREAK
2517 case 71:
2518 /* rule 71 can match eol */
2519 *yy_cp = (yy_hold_char); /* undo effects of setting up commentcnvYYtext */
2520 (yy_c_buf_p) = yy_cp -= 1;
2521 YY_DO_BEFORE_ACTION; /* set up commentcnvYYtext again */
2522 #line 822 "commentcnv.l"
2523 case 72:
2524 /* rule 72 can match eol */
2526 #line 822 "commentcnv.l"
2527 { // forgot section id?
2529  bool oldSkip=g_skip;
2530  startCondSection(" "); // fake section id causing the section to be hidden unconditionally
2531  if ((g_condCtx==CComment || g_readLineCtx==SComment) &&
2532  !oldSkip && g_skip)
2533  {
2534  //printf("** Adding terminator for comment!\n");
2535  if (g_lang!=SrcLangExt_Python &&
2537  {
2538  ADDCHAR('*');
2539  ADDCHAR('/');
2540  }
2541  }
2542  if (*commentcnvYYtext=='\n') g_lineNr++;
2543  if (g_readLineCtx==SComment)
2544  {
2545  BEGIN(SComment);
2546  }
2547  else
2548  {
2549  BEGIN(g_condCtx);
2550  }
2551  }
2552  YY_BREAK
2553 case 73:
2555 #line 847 "commentcnv.l"
2556 { // expand alias without arguments
2558  }
2559  YY_BREAK
2560 case 74:
2562 #line 850 "commentcnv.l"
2563 { // expand alias with arguments
2565  g_blockCount=1;
2567  g_lastEscaped=0;
2568  BEGIN( ReadAliasArgs );
2569  }
2570  YY_BREAK
2571 case 75:
2573 #line 857 "commentcnv.l"
2574 { // skip leading special comments (see bug 618079)
2575  }
2576  YY_BREAK
2577 case 76:
2579 #line 859 "commentcnv.l"
2580 { // oops, end of comment in the middle of an alias?
2582  {
2583  REJECT;
2584  }
2585  else // abort the alias, restart scanning
2586  {
2589  BEGIN(Scan);
2590  }
2591  }
2592  YY_BREAK
2593 case 77:
2595 #line 871 "commentcnv.l"
2596 {
2599  }
2600  YY_BREAK
2601 case 78:
2603 #line 875 "commentcnv.l"
2604 {
2606  else g_lastEscaped=TRUE;
2608  }
2609  YY_BREAK
2610 case 79:
2611 /* rule 79 can match eol */
2613 #line 880 "commentcnv.l"
2614 {
2616  g_lineNr++;
2618  }
2619  YY_BREAK
2620 case 80:
2622 #line 885 "commentcnv.l"
2623 {
2625  if (!g_lastEscaped) g_blockCount++;
2627  }
2628  YY_BREAK
2629 case 81:
2631 #line 890 "commentcnv.l"
2632 {
2634  if (!g_lastEscaped) g_blockCount--;
2635  if (g_blockCount==0)
2636  {
2639  }
2641  }
2642  YY_BREAK
2643 case 82:
2645 #line 900 "commentcnv.l"
2646 {
2649  }
2650  YY_BREAK
2651 case 83:
2653 #line 904 "commentcnv.l"
2654 {
2656  }
2657  YY_BREAK
2658 case 84:
2660 #line 908 "commentcnv.l"
2661 ECHO;
2662  YY_BREAK
2663 #line 2664 "/nova/app/home/novasoft/doxygen/doxygen-1.8.11/build/generated_src/commentcnv.cpp"
2664  case YY_STATE_EOF(INITIAL):
2665  case YY_STATE_EOF(Scan):
2666  case YY_STATE_EOF(SkipString):
2667  case YY_STATE_EOF(SkipChar):
2668  case YY_STATE_EOF(SComment):
2669  case YY_STATE_EOF(CComment):
2670  case YY_STATE_EOF(Verbatim):
2671  case YY_STATE_EOF(VerbatimCode):
2672  case YY_STATE_EOF(ReadLine):
2673  case YY_STATE_EOF(CondLine):
2674  case YY_STATE_EOF(ReadAliasArgs):
2675  yyterminate();
2676 
2677  case YY_END_OF_BUFFER:
2678  {
2679  /* Amount of text matched not including the EOB char. */
2680  int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
2681 
2682  /* Undo the effects of YY_DO_BEFORE_ACTION. */
2683  *yy_cp = (yy_hold_char);
2685 
2686  if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
2687  {
2688  /* We're scanning a new file or input source. It's
2689  * possible that this happened because the user
2690  * just pointed commentcnvYYin at a new source and called
2691  * commentcnvYYlex(). If so, then we have to assure
2692  * consistency between YY_CURRENT_BUFFER and our
2693  * globals. Here is the right place to do so, because
2694  * this is the first action (other than possibly a
2695  * back-up) that will match for the new input source.
2696  */
2697  (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
2698  YY_CURRENT_BUFFER_LVALUE->yy_input_file = commentcnvYYin;
2699  YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
2700  }
2701 
2702  /* Note that here we test for yy_c_buf_p "<=" to the position
2703  * of the first EOB in the buffer, since yy_c_buf_p will
2704  * already have been incremented past the NUL character
2705  * (since all states make transitions on EOB to the
2706  * end-of-buffer state). Contrast this with the test
2707  * in input().
2708  */
2709  if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
2710  { /* This was really a NUL. */
2711  yy_state_type yy_next_state;
2712 
2713  (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
2714 
2715  yy_current_state = yy_get_previous_state( );
2716 
2717  /* Okay, we're now positioned to make the NUL
2718  * transition. We couldn't have
2719  * yy_get_previous_state() go ahead and do it
2720  * for us because it doesn't know how to deal
2721  * with the possibility of jamming (and we don't
2722  * want to build jamming into it because then it
2723  * will run more slowly).
2724  */
2725 
2726  yy_next_state = yy_try_NUL_trans( yy_current_state );
2727 
2729 
2730  if ( yy_next_state )
2731  {
2732  /* Consume the NUL. */
2733  yy_cp = ++(yy_c_buf_p);
2734  yy_current_state = yy_next_state;
2735  goto yy_match;
2736  }
2737 
2738  else
2739  {
2740  yy_cp = (yy_c_buf_p);
2741  goto yy_find_action;
2742  }
2743  }
2744 
2745  else switch ( yy_get_next_buffer( ) )
2746  {
2747  case EOB_ACT_END_OF_FILE:
2748  {
2750 
2751  if ( commentcnvYYwrap( ) )
2752  {
2753  /* Note: because we've taken care in
2754  * yy_get_next_buffer() to have set up
2755  * commentcnvYYtext, we can now set up
2756  * yy_c_buf_p so that if some total
2757  * hoser (like flex itself) wants to
2758  * call the scanner after we return the
2759  * YY_NULL, it'll still work - another
2760  * YY_NULL will get returned.
2761  */
2763 
2765  goto do_action;
2766  }
2767 
2768  else
2769  {
2770  if ( ! (yy_did_buffer_switch_on_eof) )
2771  YY_NEW_FILE;
2772  }
2773  break;
2774  }
2775 
2776  case EOB_ACT_CONTINUE_SCAN:
2777  (yy_c_buf_p) =
2778  (yytext_ptr) + yy_amount_of_matched_text;
2779 
2780  yy_current_state = yy_get_previous_state( );
2781 
2782  yy_cp = (yy_c_buf_p);
2784  goto yy_match;
2785 
2786  case EOB_ACT_LAST_MATCH:
2787  (yy_c_buf_p) =
2788  &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
2789 
2790  yy_current_state = yy_get_previous_state( );
2791 
2792  yy_cp = (yy_c_buf_p);
2794  goto yy_find_action;
2795  }
2796  break;
2797  }
2798 
2799  default:
2801  "fatal flex scanner internal error--no action found" );
2802  } /* end of action switch */
2803  } /* end of scanning one token */
#define YY_AT_BOL()
Definition: commentcnv.cpp:350
static void copyToOutput(const char *s, int len)
int commentcnvYYleng
Definition: commentcnv.cpp:294
static int yy_n_chars
Definition: commentcnv.cpp:293
#define REJECT
static int g_condCtx
#define CondLine
static yyconst flex_int16_t yy_def[464]
Definition: commentcnv.cpp:582
static int g_lastBlockContext
register char * yy_bp
#define YY_MORE_ADJ
static bool isFixedForm
static yyconst flex_int16_t yy_accept[412]
Definition: commentcnv.cpp:436
char * commentcnvYYtext
uint length() const
Definition: qcstring.h:195
static SrcLangExt g_lang
static QCString g_blockName
#define YY_RESTORE_YY_MORE_OFFSET
static void replaceAliases(const char *s)
#define EOB_ACT_LAST_MATCH
Definition: commentcnv.cpp:181
#define YY_STATE_EOF(state)
Definition: commentcnv.cpp:154
static int g_blockCount
char & at(uint i) const
Definition: qcstring.h:326
static char * yy_full_match
static char yy_hold_char
Definition: commentcnv.cpp:292
const bool FALSE
Definition: qglobal.h:370
static int g_stringContext
#define YY_CURRENT_BUFFER_LVALUE
Definition: commentcnv.cpp:289
#define YY_BREAK
#define yytext_ptr
Definition: commentcnv.cpp:368
static int yy_get_next_buffer(void)
#define YY_SC_TO_UI(c)
Definition: commentcnv.cpp:138
static QStrList * l
Definition: config.cpp:1044
int yy_state_type
Definition: code.cpp:361
static void endCondSection()
#define SkipChar
register char * yy_cp
static bool g_mlBrief
static yyconst flex_int32_t yy_meta[51]
Definition: commentcnv.cpp:518
FILE * commentcnvYYin
Definition: commentcnv.cpp:359
#define VerbatimCode
static int yy_did_buffer_switch_on_eof
Definition: commentcnv.cpp:304
#define CComment
static QStack< CommentCtx > g_commentStack
#define SkipString
static yyconst flex_int16_t yy_nxt[1704]
Definition: commentcnv.cpp:637
#define YY_NEW_FILE
Definition: commentcnv.cpp:157
static yyconst flex_int16_t yy_chk[1704]
Definition: commentcnv.cpp:829
#define EOB_ACT_END_OF_FILE
Definition: commentcnv.cpp:180
static int g_nestingCount
static int g_col
static yyconst flex_int16_t yy_acclist[344]
Definition: commentcnv.cpp:394
static yy_state_type yy_try_NUL_trans(yy_state_type current_state)
#define YY_FATAL_ERROR(msg)
static int yy_start
Definition: commentcnv.cpp:299
#define EOB_ACT_CONTINUE_SCAN
Definition: commentcnv.cpp:179
static int g_readLineCtx
void replaceComment(int offset)
#define Scan
#define ECHO
#define YY_RULE_SETUP
static char * yy_c_buf_p
Definition: commentcnv.cpp:297
#define YY_END_OF_BUFFER
Definition: commentcnv.cpp:386
#define YY_DO_BEFORE_ACTION
Definition: commentcnv.cpp:378
unsigned char YY_CHAR
Definition: code.cpp:357
static bool g_pythonDocString
#define YY_BUFFER_NEW
Definition: commentcnv.cpp:254
#define YY_TRAILING_HEAD_MASK
#define ADDCHAR(c)
#define yyterminate()
static int g_blockHeadCol
static int g_lineNr
static int g_lastCommentContext
static QCString g_aliasString
#define BEGIN
Definition: commentcnv.cpp:144
#define commentcnvYYwrap(n)
Definition: commentcnv.cpp:354
static yy_state_type * yy_state_ptr
#define Verbatim
#define YY_BUFFER_NORMAL
Definition: commentcnv.cpp:255
static int g_javaBlock
static yy_state_type yy_get_previous_state(void)
#define SComment
#define ReadAliasArgs
static bool g_specialComment
static void startCondSection(const char *sectId)
static int g_charContext
static bool g_lastEscaped
static yyconst flex_int32_t yy_ec[256]
Definition: commentcnv.cpp:486
static int yy_lp
#define INITIAL
static int yy_full_lp
static bool g_inSpecialComment
static yy_state_type * yy_state_buf
Q_EXPORT int qstrcmp(const char *str1, const char *str2)
Definition: qcstring.h:95
#define YY_TRAILING_MASK
static bool g_inRoseComment
register int yy_act
#define ReadLine
static yyconst flex_int16_t yy_base[464]
Definition: commentcnv.cpp:527
static int * yy_full_state
const bool TRUE
Definition: qglobal.h:371
static int yy_looking_for_trail_begin
static bool g_skip
#define YY_START
Definition: commentcnv.cpp:150
static void yy_fatal_error ( yyconst char  msg[])
static
static void yy_fatal_error ( yyconst char *  msg)
static

Definition at line 3435 of file commentcnv.cpp.

3436 {
3437  (void) fprintf( stderr, "%s\n", msg );
3438  exit( YY_EXIT_FAILURE );
3439 }
void msg(const char *fmt,...)
Definition: message.cpp:107
#define YY_EXIT_FAILURE
static int yy_get_next_buffer ( void  )
static

Definition at line 2813 of file commentcnv.cpp.

2814 {
2815  register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
2816  register char *source = (yytext_ptr);
2817  register int number_to_move, i;
2818  int ret_val;
2819 
2820  if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
2822  "fatal flex scanner internal error--end of buffer missed" );
2823 
2824  if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
2825  { /* Don't try to fill the buffer, so this is an EOF. */
2826  if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
2827  {
2828  /* We matched a single character, the EOB, so
2829  * treat this as a final EOF.
2830  */
2831  return EOB_ACT_END_OF_FILE;
2832  }
2833 
2834  else
2835  {
2836  /* We matched some text prior to the EOB, first
2837  * process it.
2838  */
2839  return EOB_ACT_LAST_MATCH;
2840  }
2841  }
2842 
2843  /* Try to read more data. */
2844 
2845  /* First move last chars to start of buffer. */
2846  number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1;
2847 
2848  for ( i = 0; i < number_to_move; ++i )
2849  *(dest++) = *(source++);
2850 
2851  if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
2852  /* don't do the read, it's not guaranteed to return an EOF,
2853  * just force an EOF
2854  */
2855  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
2856 
2857  else
2858  {
2859  int num_to_read =
2860  YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
2861 
2862  while ( num_to_read <= 0 )
2863  { /* Not enough room in the buffer - grow it. */
2864 
2866 "input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
2867 
2868  }
2869 
2870  if ( num_to_read > YY_READ_BUF_SIZE )
2871  num_to_read = YY_READ_BUF_SIZE;
2872 
2873  /* Read in more data. */
2874  YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
2875  (yy_n_chars), (size_t) num_to_read );
2876 
2877  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
2878  }
2879 
2880  if ( (yy_n_chars) == 0 )
2881  {
2882  if ( number_to_move == YY_MORE_ADJ )
2883  {
2884  ret_val = EOB_ACT_END_OF_FILE;
2886  }
2887 
2888  else
2889  {
2890  ret_val = EOB_ACT_LAST_MATCH;
2891  YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
2893  }
2894  }
2895 
2896  else
2897  ret_val = EOB_ACT_CONTINUE_SCAN;
2898 
2899  if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
2900  /* Extend the array by 50%, plus the number we really need. */
2901  yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
2902  YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) commentcnvYYrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size );
2903  if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
2904  YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
2905  }
2906 
2907  (yy_n_chars) += number_to_move;
2910 
2911  (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
2912 
2913  return ret_val;
2914 }
static int yy_n_chars
Definition: commentcnv.cpp:293
#define YY_MORE_ADJ
#define EOB_ACT_LAST_MATCH
Definition: commentcnv.cpp:181
#define YY_BUFFER_EOF_PENDING
Definition: commentcnv.cpp:266
#define YY_CURRENT_BUFFER_LVALUE
Definition: commentcnv.cpp:289
#define yytext_ptr
Definition: commentcnv.cpp:368
FILE * commentcnvYYin
Definition: commentcnv.cpp:359
#define EOB_ACT_END_OF_FILE
Definition: commentcnv.cpp:180
void * commentcnvYYrealloc(void *, yy_size_t)
#define YY_FATAL_ERROR(msg)
#define EOB_ACT_CONTINUE_SCAN
Definition: commentcnv.cpp:179
static char * yy_c_buf_p
Definition: commentcnv.cpp:297
#define YY_INPUT(buf, result, max_size)
void commentcnvYYrestart(FILE *input_file)
#define YY_READ_BUF_SIZE
size_t yy_size_t
Definition: code.cpp:203
#define YY_END_OF_BUFFER_CHAR
Definition: commentcnv.cpp:159
static yy_state_type yy_get_previous_state ( void  )
static

Definition at line 2918 of file commentcnv.cpp.

2919 {
2920  register yy_state_type yy_current_state;
2921  register char *yy_cp;
2922 
2923  yy_current_state = (yy_start);
2924  yy_current_state += YY_AT_BOL();
2925 
2926  (yy_state_ptr) = (yy_state_buf);
2927  *(yy_state_ptr)++ = yy_current_state;
2928 
2929  for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
2930  {
2931  register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
2932  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2933  {
2934  yy_current_state = (int) yy_def[yy_current_state];
2935  if ( yy_current_state >= 411 )
2936  yy_c = yy_meta[(unsigned int) yy_c];
2937  }
2938  yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2939  *(yy_state_ptr)++ = yy_current_state;
2940  }
2941 
2942  return yy_current_state;
2943 }
#define YY_AT_BOL()
Definition: commentcnv.cpp:350
static yyconst flex_int16_t yy_def[464]
Definition: commentcnv.cpp:582
#define YY_MORE_ADJ
#define yytext_ptr
Definition: commentcnv.cpp:368
#define YY_SC_TO_UI(c)
Definition: commentcnv.cpp:138
int yy_state_type
Definition: code.cpp:361
register char * yy_cp
static yyconst flex_int32_t yy_meta[51]
Definition: commentcnv.cpp:518
static yyconst flex_int16_t yy_nxt[1704]
Definition: commentcnv.cpp:637
static yyconst flex_int16_t yy_chk[1704]
Definition: commentcnv.cpp:829
static int yy_start
Definition: commentcnv.cpp:299
static char * yy_c_buf_p
Definition: commentcnv.cpp:297
unsigned char YY_CHAR
Definition: code.cpp:357
static yy_state_type * yy_state_ptr
static yyconst flex_int32_t yy_ec[256]
Definition: commentcnv.cpp:486
static yy_state_type * yy_state_buf
static yyconst flex_int16_t yy_base[464]
Definition: commentcnv.cpp:527
static int yy_init_globals ( void  )
static

Definition at line 3538 of file commentcnv.cpp.

3539 {
3540  /* Initialization is the same as for the non-reentrant scanner.
3541  * This function is called from commentcnvYYlex_destroy(), so don't allocate here.
3542  */
3543 
3544  (yy_buffer_stack) = 0;
3545  (yy_buffer_stack_top) = 0;
3546  (yy_buffer_stack_max) = 0;
3547  (yy_c_buf_p) = (char *) 0;
3548  (yy_init) = 0;
3549  (yy_start) = 0;
3550 
3551  (yy_state_buf) = 0;
3552  (yy_state_ptr) = 0;
3553  (yy_full_match) = 0;
3554  (yy_lp) = 0;
3555 
3556 /* Defined in main.c */
3557 #ifdef YY_STDINIT
3558  commentcnvYYin = stdin;
3560 #else
3561  commentcnvYYin = (FILE *) 0;
3562  commentcnvYYout = (FILE *) 0;
3563 #endif
3564 
3565  /* For future reference: Set errno on error, since we are called by
3566  * commentcnvYYlex_init()
3567  */
3568  return 0;
3569 }
static YY_BUFFER_STATE * yy_buffer_stack
Definition: commentcnv.cpp:274
static size_t yy_buffer_stack_top
Definition: commentcnv.cpp:272
static char * yy_full_match
static size_t yy_buffer_stack_max
Definition: commentcnv.cpp:273
FILE * commentcnvYYin
Definition: commentcnv.cpp:359
FILE * commentcnvYYout
Definition: commentcnv.cpp:359
static int yy_start
Definition: commentcnv.cpp:299
static char * yy_c_buf_p
Definition: commentcnv.cpp:297
static int yy_init
Definition: commentcnv.cpp:298
static yy_state_type * yy_state_ptr
static int yy_lp
static yy_state_type * yy_state_buf
static yy_state_type yy_try_NUL_trans ( yy_state_type  current_state)
static

Definition at line 2950 of file commentcnv.cpp.

2951 {
2952  register int yy_is_jam;
2953 
2954  register YY_CHAR yy_c = 1;
2955  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2956  {
2957  yy_current_state = (int) yy_def[yy_current_state];
2958  if ( yy_current_state >= 411 )
2959  yy_c = yy_meta[(unsigned int) yy_c];
2960  }
2961  yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2962  yy_is_jam = (yy_current_state == 410);
2963  if ( ! yy_is_jam )
2964  *(yy_state_ptr)++ = yy_current_state;
2965 
2966  return yy_is_jam ? 0 : yy_current_state;
2967 }
static yyconst flex_int16_t yy_def[464]
Definition: commentcnv.cpp:582
static yyconst flex_int32_t yy_meta[51]
Definition: commentcnv.cpp:518
static yyconst flex_int16_t yy_nxt[1704]
Definition: commentcnv.cpp:637
static yyconst flex_int16_t yy_chk[1704]
Definition: commentcnv.cpp:829
unsigned char YY_CHAR
Definition: code.cpp:357
static yy_state_type * yy_state_ptr
static yyconst flex_int16_t yy_base[464]
Definition: commentcnv.cpp:527
static int yyread ( char *  buf,
int  max_size 
)
static

Definition at line 1269 of file commentcnv.cpp.

1270 {
1271  int bytesInBuf = g_inBuf->curPos()-g_inBufPos;
1272  int bytesToCopy = QMIN(max_size,bytesInBuf);
1273  memcpy(buf,g_inBuf->data()+g_inBufPos,bytesToCopy);
1274  g_inBufPos+=bytesToCopy;
1275  return bytesToCopy;
1276 }
static BufStr * g_inBuf
char * data() const
Definition: bufstr.h:81
uint curPos() const
Definition: bufstr.h:97
#define QMIN(a, b)
Definition: qglobal.h:391
static int g_inBufPos
static void yyunput ( int  c,
char *  buf_ptr 
)
static
static void yyunput ( int  c,
register char *  yy_bp 
)
static

Definition at line 2969 of file commentcnv.cpp.

2970 {
2971  register char *yy_cp;
2972 
2973  yy_cp = (yy_c_buf_p);
2974 
2975  /* undo effects of setting up commentcnvYYtext */
2976  *yy_cp = (yy_hold_char);
2977 
2978  if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
2979  { /* need to shift things up to make room */
2980  /* +2 for EOB chars. */
2981  register int number_to_move = (yy_n_chars) + 2;
2982  register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
2983  YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];
2984  register char *source =
2985  &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move];
2986 
2987  while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
2988  *--dest = *--source;
2989 
2990  yy_cp += (int) (dest - source);
2991  yy_bp += (int) (dest - source);
2992  YY_CURRENT_BUFFER_LVALUE->yy_n_chars =
2993  (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size;
2994 
2995  if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
2996  YY_FATAL_ERROR( "flex scanner push-back overflow" );
2997  }
2998 
2999  *--yy_cp = (char) c;
3000 
3001  (yytext_ptr) = yy_bp;
3002  (yy_hold_char) = *yy_cp;
3003  (yy_c_buf_p) = yy_cp;
3004 }
static int yy_n_chars
Definition: commentcnv.cpp:293
register char * yy_bp
static char yy_hold_char
Definition: commentcnv.cpp:292
#define YY_CURRENT_BUFFER_LVALUE
Definition: commentcnv.cpp:289
#define yytext_ptr
Definition: commentcnv.cpp:368
register char * yy_cp
#define YY_FATAL_ERROR(msg)
if(!(yy_init))
static char * yy_c_buf_p
Definition: commentcnv.cpp:297

Variable Documentation

int commentcnvYY_flex_debug = 0

Definition at line 1022 of file commentcnv.cpp.

FILE * commentcnvYYin = (FILE *) 0

Definition at line 359 of file commentcnv.cpp.

int commentcnvYYleng

Definition at line 294 of file commentcnv.cpp.

int commentcnvYYlineno = 1

Definition at line 365 of file commentcnv.cpp.

FILE * commentcnvYYout = (FILE *) 0

Definition at line 359 of file commentcnv.cpp.

char * commentcnvYYtext

Definition at line 1046 of file commentcnv.cpp.

QCString g_aliasString
static

Definition at line 1129 of file commentcnv.cpp.

int g_blockCount
static

Definition at line 1130 of file commentcnv.cpp.

int g_blockHeadCol
static

Definition at line 1111 of file commentcnv.cpp.

QCString g_blockName
static

Definition at line 1120 of file commentcnv.cpp.

int g_charContext
static

Definition at line 1125 of file commentcnv.cpp.

int g_col
static

Definition at line 1110 of file commentcnv.cpp.

QStack<CommentCtx> g_commentStack
static

Definition at line 1119 of file commentcnv.cpp.

int g_condCtx
static

Definition at line 1117 of file commentcnv.cpp.

QStack<CondCtx> g_condStack
static

Definition at line 1118 of file commentcnv.cpp.

QCString g_fileName
static

Definition at line 1115 of file commentcnv.cpp.

BufStr* g_inBuf
static

Definition at line 1107 of file commentcnv.cpp.

int g_inBufPos
static

Definition at line 1109 of file commentcnv.cpp.

bool g_inRoseComment
static

Definition at line 1123 of file commentcnv.cpp.

bool g_inSpecialComment
static

Definition at line 1122 of file commentcnv.cpp.

int g_javaBlock
static

Definition at line 1126 of file commentcnv.cpp.

SrcLangExt g_lang
static

Definition at line 1136 of file commentcnv.cpp.

int g_lastBlockContext
static

Definition at line 1132 of file commentcnv.cpp.

int g_lastCommentContext
static

Definition at line 1121 of file commentcnv.cpp.

bool g_lastEscaped
static

Definition at line 1131 of file commentcnv.cpp.

int g_lineNr
static

Definition at line 1116 of file commentcnv.cpp.

bool g_mlBrief
static

Definition at line 1112 of file commentcnv.cpp.

int g_nestingCount
static

Definition at line 1134 of file commentcnv.cpp.

BufStr* g_outBuf
static

Definition at line 1108 of file commentcnv.cpp.

bool g_pythonDocString
static

Definition at line 1133 of file commentcnv.cpp.

int g_readLineCtx
static

Definition at line 1113 of file commentcnv.cpp.

bool g_skip
static

Definition at line 1114 of file commentcnv.cpp.

bool g_specialComment
static

Definition at line 1127 of file commentcnv.cpp.

int g_stringContext
static

Definition at line 1124 of file commentcnv.cpp.

bool isFixedForm
static

Definition at line 1137 of file commentcnv.cpp.

yyconst flex_int16_t yy_accept[412]
static

Definition at line 436 of file commentcnv.cpp.

yyconst flex_int16_t yy_acclist[344]
static

Definition at line 394 of file commentcnv.cpp.

register int yy_act

Definition at line 1483 of file commentcnv.cpp.

yyconst flex_int16_t yy_base[464]
static

Definition at line 527 of file commentcnv.cpp.

register char * yy_bp

Definition at line 1482 of file commentcnv.cpp.

YY_BUFFER_STATE* yy_buffer_stack = 0
static

Stack as an array.

Definition at line 274 of file commentcnv.cpp.

size_t yy_buffer_stack_max = 0
static

capacity of stack.

Definition at line 273 of file commentcnv.cpp.

size_t yy_buffer_stack_top = 0
static

index of top of stack.

Definition at line 272 of file commentcnv.cpp.

char* yy_c_buf_p = (char *) 0
static

Definition at line 297 of file commentcnv.cpp.

yyconst flex_int16_t yy_chk[1704]
static

Definition at line 829 of file commentcnv.cpp.

register char* yy_cp

Definition at line 1482 of file commentcnv.cpp.

YY_DECL
Initial value:
{
register yy_state_type yy_current_state
int yy_state_type
Definition: code.cpp:361

The main scanner function which does all the work.

Definition at line 1480 of file commentcnv.cpp.

yyconst flex_int16_t yy_def[464]
static

Definition at line 582 of file commentcnv.cpp.

int yy_did_buffer_switch_on_eof
static

Definition at line 304 of file commentcnv.cpp.

yyconst flex_int32_t yy_ec[256]
static

Definition at line 486 of file commentcnv.cpp.

int yy_full_lp
static

Definition at line 1028 of file commentcnv.cpp.

char* yy_full_match
static

Definition at line 1025 of file commentcnv.cpp.

int* yy_full_state
static

Definition at line 1029 of file commentcnv.cpp.

char yy_hold_char
static

Definition at line 292 of file commentcnv.cpp.

int yy_init = 0
static

Definition at line 298 of file commentcnv.cpp.

int yy_looking_for_trail_begin = 0
static

Definition at line 1027 of file commentcnv.cpp.

int yy_lp
static

Definition at line 1026 of file commentcnv.cpp.

yyconst flex_int32_t yy_meta[51]
static
Initial value:
=
{ 0,
1, 2, 3, 1, 4, 5, 6, 6, 6, 7,
6, 8, 6, 9, 9, 10, 11, 1, 1, 12,
13, 13, 13, 1, 14, 1, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 16, 17, 18
}

Definition at line 518 of file commentcnv.cpp.

int yy_n_chars
static

Definition at line 293 of file commentcnv.cpp.

yyconst flex_int16_t yy_nxt[1704]
static

Definition at line 637 of file commentcnv.cpp.

int yy_start = 0
static

Definition at line 299 of file commentcnv.cpp.

yy_state_type* yy_state_buf =0
static

Definition at line 1024 of file commentcnv.cpp.

yy_state_type * yy_state_ptr =0
static

Definition at line 1024 of file commentcnv.cpp.