/// <summary> /// Replace the the variable name with the requested expression. /// </summary> /// <param name="varName"></param> /// <param name="replacementExpr"></param> /// <returns></returns> public IVariableScopeHolder AddInternal(string varName, Expression replacementExpr) { Debug.WriteLine("Cache Expression: {0} => {1}", varName, replacementExpr); /// /// Somethign to get us back to this state /// IVariableScopeHolder popper = null; if (_expressionReplacement.ContainsKey(varName)) { popper = new CCReplacementExpression(this, varName, _expressionReplacement[varName]); } else { popper = new CCReplacementExpression(this, varName, null); } /// /// And save the expression for future lookup /// if (replacementExpr != null) { _expressionReplacement[varName] = replacementExpr; } else { _expressionReplacement.Remove(varName); } return(popper); }
/// <summary> /// Replace the the variable name with the requested expression. /// </summary> /// <param name="varName"></param> /// <param name="replacementExpr"></param> /// <returns></returns> public IVariableScopeHolder AddInternal(string varName, Expression replacementExpr) { Debug.WriteLine("Cache Expression: {0} => {1}", varName, replacementExpr); /// /// Somethign to get us back to this state /// IVariableScopeHolder popper = null; if (_expressionReplacement.ContainsKey(varName)) { popper = new CCReplacementExpression(this, varName, _expressionReplacement[varName]); } else { popper = new CCReplacementExpression(this, varName, null); } /// /// And save the expression for future lookup /// if (replacementExpr != null) { _expressionReplacement[varName] = replacementExpr; } else { _expressionReplacement.Remove(varName); } return popper; }