From 6c8e9037e19cbc6968cae7ae3370385d3a7348f9 Mon Sep 17 00:00:00 2001 From: Thaum Rystra Date: Fri, 8 May 2020 16:20:00 +0200 Subject: [PATCH] Fixed function being replaced with object['value'] accessors --- .../utility/replaceBareSymbolsWithValueAccessor.js | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/app/imports/api/creature/computation/utility/replaceBareSymbolsWithValueAccessor.js b/app/imports/api/creature/computation/utility/replaceBareSymbolsWithValueAccessor.js index dbdd4f99..d3686c13 100644 --- a/app/imports/api/creature/computation/utility/replaceBareSymbolsWithValueAccessor.js +++ b/app/imports/api/creature/computation/utility/replaceBareSymbolsWithValueAccessor.js @@ -1,7 +1,17 @@ import * as math from 'mathjs'; export default function replaceBareSymbolsWithValueAccessor(node, path) { - if (node.isSymbolNode && path !== 'object') { + if (node.isFunctionNode){ + let fn = node.fn; + if (fn && fn.isSymbolNode){ + fn.skipReplacement = true; + } + return node; + } else if ( + node.isSymbolNode && + path !== 'object' && + node.skipReplacement !== true + ) { const object = new math.SymbolNode(node.name); const address = new math.ConstantNode('value'); const index = new math.IndexNode([address]);