2016-10-04 61 views
0

在Groovy中,下面的產生看到的,只是如Java錯誤消息將(除了不同報價和缺少分號)Groovy應該允許逗號分隔斷言消息嗎?

assert false : 'If you see me, colons are allowed! 

這也產品錯誤消息,但逗號分隔從所述消息布爾表達式

assert false, 'If you see me, commas are allowed!' 

我在Groovy文檔中找不到任何關於此內容的信息,這是正確的行爲嗎?

您可以在Groovy web console上試試這個。


我不問,如果它確實允許逗號,顯然它似乎,但我想知道如果我的文檔中錯過了什麼,這是一個錯誤,或者如果它只是無證。

+0

文檔中有一些示例 - http://docs.groovy-lang.org/latest/html/documentation/index.html#groovy-operators – Rao

回答

5

都是有效的,因爲你可以在antlr grammar file for Groovy

| "assert"! assertAle: assignmentLessExpression! 
    ( options {greedy=true;} : 
     ( COMMA! nls! // TODO: gratuitous change caused failures 
     | COLON! nls! // standard Java syntax, but looks funny in Groovy 
     ) 
     assertE:expression[0]! 
    )? 

逗號語法似乎已被添加,因爲(對Java)的冒號語法在Groovy看起來很滑稽看到。