internal static JsonReaderException Create(IJsonLineInfo lineInfo, string path, string message, Exception ex)
        {
            message = JsonPosition.FormatMessage(lineInfo, path, message);

            int lineNumber;
            int linePosition;

            if (lineInfo != null && lineInfo.HasLineInfo())
            {
                lineNumber   = lineInfo.LineNumber;
                linePosition = lineInfo.LinePosition;
            }
            else
            {
                lineNumber   = 0;
                linePosition = 0;
            }

            return(new JsonReaderException(message, ex, path, lineNumber, linePosition));
        }
        internal static JsonSerializationException Create(IJsonLineInfo lineInfo, string path, string message, Exception ex)
        {
            message = JsonPosition.FormatMessage(lineInfo, path, message);

            return(new JsonSerializationException(message, ex));
        }
        internal static JsonWriterException Create(string path, string message, Exception ex)
        {
            message = JsonPosition.FormatMessage(null, path, message);

            return(new JsonWriterException(message, ex, path));
        }