private void RenderLiteral(LiteralFilterExpression expression, object literalValue)
        {
            var value = _literalEmitter.EmitLiteral(literalValue, expression.LeaveUnquoted);

            if (AreQuotesSuppressed() && value is string)
            {
                if (value.StartsWith("'") && value.EndsWith("'"))
                {
                    value = value.Substring(1, value.Length - 2);
                }
            }
            if (AreQuotesSuppressed() && value is string)
            {
                if (value.StartsWith("\"") && value.EndsWith("\""))
                {
                    value = value.Substring(1, value.Length - 2);
                }
            }
            //TODO: need to do special stuff here for dates etc.

            // JM 02-01-2016 - Graham: Please review this
            //if (literalValue is DateTime || literalValue is DateTimeOffset)
            //	value = "datetime'" + value + "'";

            _sb.Append(value);
        }
 /// <summary>
 /// Visits a literal expression.
 /// </summary>
 /// <param name="expression">The literal expression to visit.</param>
 public override void VisitLiteralExpression(LiteralFilterExpression expression)
 {
     RenderLiteral(expression, expression.LiteralValue);
 }