public object Convert(object value, Type type)
        {
            ValidationUtils.ArgumentNotNull(value, nameof(value));

            JToken token = value as JToken;

            if (token == null)
            {
                throw new ArgumentException("Value is not a JToken.", nameof(value));
            }

            return(_reader.CreateISerializableItem(token, type, _contract, _member));
        }