File tree 3 files changed +39
-5
lines changed
src/Rezzza/Formulate/Renderer
3 files changed +39
-5
lines changed Original file line number Diff line number Diff line change
1
+ bin
1
2
vendor
2
3
composer.lock
Original file line number Diff line number Diff line change 11
11
}],
12
12
"require" : {
13
13
"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"
15
18
},
16
19
"require-dev" : {
17
20
"mageekguy/atoum" : " master"
18
21
},
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
+ ],
19
43
"autoload" : {
20
44
"psr-0" : {
21
45
"Rezzza\\ Formulate" : " src/"
Original file line number Diff line number Diff line change 7
7
use Rezzza \Formulate \Exception \RenderFormulaException ;
8
8
use exprlib \Parser ;
9
9
10
+ from ('Hoa ' )
11
+ ->import ('Math.Evaluer.~ ' );
12
+
13
+
10
14
/**
11
15
* AbstractFormulaRenderer
12
16
*
@@ -27,15 +31,20 @@ abstract class AbstractFormulaRenderer implements FormulaRendererInterface
27
31
*/
28
32
public function render (Formula $ formula , TokenCollectorInterface $ tokenCollector )
29
33
{
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
+ }
33
37
34
38
$ formulaString = $ this ->prepare ($ formula ->formula );
35
39
36
40
$ formulaString = $ this ->replace ($ formulaString , $ this ->buildReplacements ($ tokenCollector ->getGlobals ()));
37
41
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 ;
39
48
}
40
49
41
50
/**
You can’t perform that action at this time.
0 commit comments