Как вызвать одну функцию из другой в предварительной обработке PlantUML? - PullRequest
0 голосов
/ 26 февраля 2020

Я использую PlantUML и хочу использовать функцию предварительной обработки.

Я получаю сообщение об ошибке при попытке вызвать функцию возврата из другой возвращаемой функции. Я не знаю, что я делаю неправильно, но я получаю ошибку. Могу поспорить, что это что-то простое, но я не могу понять это.

Вот код.

@startuml
!$longestActivityLength = 20

!function $pmax($num1,$num2)
!if(num1 > num2){ return num1 }
!if(num2 > num1){ return num2 }
!if(num1 == num2){ return num1 }
!endfunction

!function $fixLen($name)
!$maxNum = $pmax($longestActivityLength,%strlen($name))
!return sprintf("%-*s%s%*s", maxNum / 2, 0), "", $name, ceiling(maxNum / 2, 0)), "")
!endfunction

skinparam swimlaneWidth same
|A|
:foo1;
:$fixLen("foo2");
|b|
:foo3 which is very long;
@enduml

и здесь ошибка.

error in preprocessing

Я предполагаю, что это синтаксическая ошибка. Что не так с кодом?

...