internal override void Decompile(StringBuilder decompilation)
        {
            if (exprStatement.Expression == null)
            {
                RuleEvaluationException exception = new RuleEvaluationException(Messages.InvokeStatementNull);
                exception.Data[RuleUserDataKeys.ErrorObject] = exprStatement;
                throw exception;
            }

            RuleExpressionWalker.Decompile(decompilation, exprStatement.Expression, null);
        }
        internal override void Decompile(StringBuilder decompilation)
        {
            if (assignStatement.Right == null)
            {
                RuleEvaluationException exception = new RuleEvaluationException(Messages.AssignRightNull);
                exception.Data[RuleUserDataKeys.ErrorObject] = assignStatement;
                throw exception;
            }
            if (assignStatement.Left == null)
            {
                RuleEvaluationException exception = new RuleEvaluationException(Messages.AssignLeftNull);
                exception.Data[RuleUserDataKeys.ErrorObject] = assignStatement;
                throw exception;
            }

            RuleExpressionWalker.Decompile(decompilation, assignStatement.Left, null);
            decompilation.Append(" = ");
            RuleExpressionWalker.Decompile(decompilation, assignStatement.Right, null);
        }