Path: blob/master/src/applications/fact/chart/PhabricatorSumChartFunction.php
12256 views
<?php12final class PhabricatorSumChartFunction3extends PhabricatorHigherOrderChartFunction {45const FUNCTIONKEY = 'sum';67protected function newArguments() {8return array(9$this->newArgument()10->setName('f')11->setType('function')12->setRepeatable(true),13);14}1516public function evaluateFunction(array $xv) {17$fv = array();18foreach ($this->getFunctionArguments() as $function) {19$fv[] = $function->evaluateFunction($xv);20}2122$n = count($xv);23$yv = array_fill(0, $n, null);2425foreach ($fv as $f) {26for ($ii = 0; $ii < $n; $ii++) {27if ($f[$ii] !== null) {28if (!isset($yv[$ii])) {29$yv[$ii] = 0;30}31$yv[$ii] += $f[$ii];32}33}34}3536return $yv;37}3839}404142