/** Executes the needed operator(s). Checks operator names, and calls the appropriate functions. */ function modify($tpl, $operatorName, $operatorParameters, $rootNamespace, $currentNamespace, &$operatorValue, $namedParameters) { switch ($operatorName) { case 'xhprof_start': eZXHProfLogger::start($namedParameters['flags'], $namedParameters['options']); $operatorValue = null; break; case 'xhprof_stop': eZXHProfLogger::stop($namedParameters['dosave']); $operatorValue = null; break; case 'record_value': eZPerfLogger::recordValue($namedParameters['name'], $operatorValue); $operatorValue = null; break; case 'make_global': /// @todo investigate: shal we use copy if $operatorValue is an object? $GLOBALS[$namedParameters['name']] = $namedParameters['value']; $operatorValue = null; } }