groovy - Groovy 是否应该允许用逗号分隔断言消息?

标签 groovy

在 Groovy 中,下面的代码会生成所见的错误消息,就像 Java 一样(除了不同的引号和缺少分号)

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

这也会产生错误消息,但逗号将消息与 bool 表达式分隔开

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

我在 Groovy 文档中找不到任何相关内容,这是正确的行为吗?

您可以在 Groovy web console 上尝试此操作.

<小时/>

我不是在问它是否允许逗号,显然似乎是这样,但我想知道我是否遗漏了文档中的某些内容,这是一个错误,或者只是没有记录.

最佳答案

两者都是有效的,正如您在 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 中看起来很有趣。

关于groovy - Groovy 是否应该允许用逗号分隔断言消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39855688/

相关文章:

grails - 有状态与无状态服务 Grails

jenkins - java.io.NotSerializableException : hudson.模型。

java - 哪种websocket服务器实现可以与rabbitmq结合使用?

groovy - Groovy歧义方法重载

gradle - gradle在外部项目上运行任务

java - 无法序列化 JTree 的根节点 (groovy/java)

正则表达式模式 - 排除部分字符串

maven - 如何在 Maven pom.xml 中指定测试目录

java - HTTP Builder/Groovy - 丢失 302(重定向)处理?

groovy - 如何在构建面板后动态添加按钮组到面板