Skip to content

Commit 89e6567

Browse files
committed
Working with hoa\math, exit exprlib
1 parent a6a1361 commit 89e6567

File tree

3 files changed

+39
-5
lines changed

3 files changed

+39
-5
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
1+
bin
12
vendor
23
composer.lock

composer.json

+25-1
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,35 @@
1111
}],
1212
"require": {
1313
"php": ">=5.3.2",
14-
"rezzza/exprlib": "1.0.*"
14+
"hoa/math" : "master",
15+
"hoa/core" : "master",
16+
"hoa/iterator": "master",
17+
"hoa/compiler": "master"
1518
},
1619
"require-dev": {
1720
"mageekguy/atoum": "master"
1821
},
22+
"repositories": [
23+
{
24+
"type": "package",
25+
"package": {
26+
"version": "master",
27+
"name": "hoa/math",
28+
"replace": {
29+
"hoa/math": "*"
30+
},
31+
"source": {
32+
"url": "https://github.com/rezzza/Math.git",
33+
"type": "git",
34+
"reference": "evaluer"
35+
},
36+
"dist": {
37+
"url": "https://github.com/rezzza/Math/zipball/master",
38+
"type": "zip"
39+
}
40+
}
41+
}
42+
],
1943
"autoload": {
2044
"psr-0": {
2145
"Rezzza\\Formulate": "src/"

src/Rezzza/Formulate/Renderer/AbstractFormulaRenderer.php

+13-4
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@
77
use Rezzza\Formulate\Exception\RenderFormulaException;
88
use exprlib\Parser;
99

10+
from ('Hoa')
11+
->import('Math.Evaluer.~');
12+
13+
1014
/**
1115
* AbstractFormulaRenderer
1216
*
@@ -27,15 +31,20 @@ abstract class AbstractFormulaRenderer implements FormulaRendererInterface
2731
*/
2832
public function render(Formula $formula, TokenCollectorInterface $tokenCollector)
2933
{
30-
foreach ($formula->getSubFormulas() as $key => $subformula) {
31-
$tokenCollector->set($key, $this->render($subformula, $tokenCollector));
32-
}
34+
foreach ($formula->getSubFormulas() as $key => $subformula) {
35+
$tokenCollector->set($key, $this->render($subformula, $tokenCollector));
36+
}
3337

3438
$formulaString = $this->prepare($formula->formula);
3539

3640
$formulaString = $this->replace($formulaString, $this->buildReplacements($tokenCollector->getGlobals()));
3741

38-
return $formula->isCalculable() ? (string) Parser::build($formulaString)->evaluate() : $formulaString;
42+
if ($formula->isCalculable()) {
43+
$evaluer = new \Hoa\Math\Evaluer\Evaluer();
44+
$formulaString = (string) $evaluer->evaluate($formulaString);
45+
}
46+
47+
return $formulaString;
3948
}
4049

4150
/**

0 commit comments

Comments
 (0)