Visual Paradigm:无效的语法高亮显示,没有严重的语法错误(据我所知)

Visual Paradigm: Invalid Syntax Highlighting without acutal syntax mistake (as far as I can see)

我想我遇到了不一定有效或有用的错误消息。如果有效,请告诉我我遇到的错误是由什么触发的。

您不遵循 UML 表示法并且您交换了参数及其类型,您的操作必须是

  • create(entity : E) : Result<E>
  • create(entities : iterable<E>) : ResultCollection<E>

您的 create(E : entity) : Result<E> 被接受 'syntactically' 因为 var 可以是 E 及其类型 entity,但是在第二种情况下,var 名称 iterable<E> 是非法的,工具拒绝了。

来自 formal/2017-12-05 §9.6.4 第 117 和 118 页:

If shown in a diagram, an Operation is shown as a text string of the form:

[<visibility>] <name> ‘(‘ [<parameter-list>] ‘)’
      [‘:’ [<return-type>] [‘[‘ <multiplicity-range> ‘]’]
      [‘{‘ <oper-property> [‘,’ <oper-property>]* ‘}’]]

and <parameter-list> is a list of Parameters of the Operation in the following format:

<parameter-list> ::= <parameter> [‘,’<parameter>]*

和第 110 页第 9.4.4 节:

<parameter> ::= [<direction>] <parameter-name> ’:’ <type-expression>
     [’[’<multiplicity-range>’]’] [’=’ <default>]
     [’{’ <parm-property> [’,’ <parm-property>]* ’}’]

所以它必须是 <parameter-name> ’:’ <type-expression> 而不是像你那样 <type-expression> ’:’ <parameter-name>