Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
EclipseXText:需要帮助解决Xtext中存在重复单行注释的问题吗_Eclipse_Xtext - Fatal编程技术网

EclipseXText:需要帮助解决Xtext中存在重复单行注释的问题吗

EclipseXText:需要帮助解决Xtext中存在重复单行注释的问题吗,eclipse,xtext,Eclipse,Xtext,用于INI文件格式解析的Xtext编辑器: 我添加了语法来解析ini文件。语法如下: terminal ALPHA: ('a'..'z' | 'A'..'Z'); terminal NUM: ('0'..'9')+; terminal WS: (' '); SYMBOL: ('[' | ']' | '.' | ',' | '(' | ')' | '<' | '>' | '+' | '-' | '*' | '%' | '!' | '"'

用于INI文件格式解析的Xtext编辑器:

我添加了语法来解析ini文件。语法如下:

terminal ALPHA:
    ('a'..'z' | 'A'..'Z');

terminal NUM:
    ('0'..'9')+;

terminal WS:
    (' ');

SYMBOL:
    ('[' | ']' | '.' | ',' | '(' | ')' | '<' | '>' | '+' | '-' | '*' | '%' | '!' | '"' | ':' | '?' | '#' | '_' | '=' |
    '\\' | '~' | '$' | '^' | '&' | '\'');

terminal SL_COMMENT:
    '//' !('\n' | '\r')* ('\r'? '\n')*;

terminal ML_COMMENT:
    '/*'->'*/';

ANY_VALUE:
    (ALPHA | NUM | SYMBOL | WS | SL_COMMENT | '}' | '/')+;

SECTION:
    (ALPHA | NUM | '_')*;

KEY:
    (ALPHA | NUM ) (ALPHA | NUM | SYMBOL|'_')*;

NL:
    ('\n' | '\r\n');

GRPCOMMENT:
    SL_COMMENT (NL)*
    SL_COMMENT? (NL)*
    SL_COMMENT (NL)*;

AnyValue:
    {AnyValue}
    value=ANY_VALUE;

IniNewSection:
    {IniNewSection}
    (comment+=SL_COMMENT)* (NL)*          // <-- Problem is here
    '[' (sectName=SECTION) ']' (NL)*
    (keyGroupsComment+=GRPCOMMENT)* (NL)* // <-- Problem is here
    (keySet+=IniNewKey)* (NL)*;

IniNewKey:
    {IniNewKey}
    (keyComment+=SL_COMMENT)* (NL)*       // <-- Problem is here
    (keyName=KEY) '=' (keyValue+=AnyValue)* (NL)*;
终端ALPHA:
('a'..'z'|'a'..'z');
终端编号:
('0'..'9')+;
终端WS:
(' ');
符号:
('[' | ']' | '.' | ',' | '(' | ')' | '' | '+' | '-' | '*' | '%' | '!' | '"' | ':' | '?' | '#' | '_' | '=' |
'\\' | '~' | '$' | '^' | '&' | '\'');
终端SL_注释:
“//”!(“\n”|“\r')*(“\r”?“\n')*;
终端ML_注释:
'/*'->'*/';
任何_值:
(ALPHA | NUM | SYMBOL | WS | SL|u COMMENT |'}'|'/')+;
第节:
(ALPHA | NUM |'|')*;
关键:
(ALPHA | NUM)(ALPHA | NUM | SYMBOL |‘’)*;
荷兰:
('\n'|'\r\n');
GRP建议:
SL_评论(NL)*
SL_评论?(NL)*
SL_评论(NL)*;
任意值:
{AnyValue}
值=任何_值;
InInNewSection:
{InInInNewSection}
(注释+=SL_注释)*(NL)*//
[Section_A]

//======================
// Key Group Comment
//======================      // <-- Problem is here

// Key Comment
// Key Comment 1
// Key Comment               // <-- Problem is here
Key1 = Value1