Related articles |
---|
Preserve C/C++ comments in ANTLR v3 akhailtash@gmail.com (Amal) (2008-01-06) |
Re: Preserve C/C++ comments in ANTLR v3 bisqwit@iki.fi (Joel Yliluoma) (2008-01-17) |
From: | Amal <akhailtash@gmail.com> |
Newsgroups: | comp.compilers |
Date: | Sun, 6 Jan 2008 18:02:27 -0500 (EST) |
Organization: | Compilers Central |
Keywords: | C, lex |
Posted-Date: | 06 Jan 2008 18:02:27 EST |
I need to extract comments from C/C++/Java source file. Normally
comments
are thrown away and they are defined as lexer rules (in ANTLR v3):
// Single-line comments
SL_COMMENT
: '//' ( ~('\r'|'\n')* ) '\r'? '\n' {skip();}
;
// Multi-line comments
ML_COMMENT
: '/*' (options {greedy=false;} : .)* '*/' {skip();}
;
Basically I need something like this:
comment : sl_comment | ml_comment ;
sl_comment : '//' COMMENT_LINE ;
ml_comment : '/*' COMMENT_TEXT '*/' ;
How do I define COMMENT_LINE and COMMENT_TEXT? Especially if I am
ignoring
whitespace, it becomes more confusing.
Any hints or pointers would be appreciated,
-- Amal
Return to the
comp.compilers page.
Search the
comp.compilers archives again.