kd
This commit is contained in:
parent
44876f0926
commit
4b20933325
1 changed files with 29 additions and 0 deletions
29
eo/contrib/mathsym/eo_interface/eoSymLambdaMutate.cpp
Normal file
29
eo/contrib/mathsym/eo_interface/eoSymLambdaMutate.cpp
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
#include <eoSymLambdaMutate.h>
|
||||||
|
#include "FunDef.h"
|
||||||
|
#include "NodeSelector.h"
|
||||||
|
|
||||||
|
Sym compress(Sym sym, NodeSelector& sel) {
|
||||||
|
|
||||||
|
return ::compress(sym);
|
||||||
|
|
||||||
|
NodeSelector::NodeSelection s = sel.select_node(sym);
|
||||||
|
|
||||||
|
Sym f = SymLambda( s.subtree());
|
||||||
|
|
||||||
|
if (f == s.subtree()) { return sym; }
|
||||||
|
|
||||||
|
return insert_subtree(sym, s.idx(), f);
|
||||||
|
}
|
||||||
|
|
||||||
|
extern Sym expand(Sym sym, NodeSelector& sel) {
|
||||||
|
|
||||||
|
return ::expand_all(sym);
|
||||||
|
|
||||||
|
NodeSelector::NodeSelection s = sel.select_node(sym);
|
||||||
|
|
||||||
|
Sym f = SymUnlambda( s.subtree());
|
||||||
|
|
||||||
|
if (f == s.subtree()) { return sym; }
|
||||||
|
|
||||||
|
return insert_subtree(sym, s.idx(), f);
|
||||||
|
}
|
||||||
Reference in a new issue