我想找出流口水规则的 LHS(左侧)中两个变量的最小值。例如:
$variable1 : // Some value generation lines
$variable2 : // Some value generation lines
// This doesn't work
$minimumOfVariable1And2 : min($variable1,$variable2)
那么如何找出最小值,是个问题。谢谢。
我想找出流口水规则的 LHS(左侧)中两个变量的最小值。例如:
$variable1 : // Some value generation lines
$variable2 : // Some value generation lines
// This doesn't work
$minimumOfVariable1And2 : min($variable1,$variable2)
那么如何找出最小值,是个问题。谢谢。
单程:
when
FactA($a : a, ...)
FactB($b : b, ...)
FactC(c < Math.min($a, $b), ...)
then
...
另一种方式:
when
FactA($a : a, ...)
FactB($b : b, ...)
then
int c = Math.min($a, $b);
...
现在,有趣的是当 FactA 和 FactB 是同一类型时:
when
Assignment($a : a, ...)
Assignment(a < $a, ...)
// $a this the minimum
then
...
因为如果 2 个分配具有相同的 a,则此规则将匹配两次(一次用于 A1-A2,一次用于 A2-A1)。