> From: Greg Stein [mailto:gstein@lyra.org]
>
> On Tue, Jun 25, 2002 at 01:25:29PM -0700, Bill Tutt wrote:
> > I don't suppose this means that you'll be using a real honest to
> > goodness URI struct in the Subversion code now does it?
>
> I hope not.
>
> Consider the following API:
>
> svn_error_t *
> svn_client_delete (svn_client_commit_info_t **commit_info,
> const char *path,
> svn_boolean_t force,
> svn_client_auth_baton_t *auth_baton,
> svn_client_get_commit_log_t log_msg_func,
> void *log_msg_baton,
> svn_wc_notify_func_t notify_func,
> void *notify_baton,
> apr_pool_t *pool);
>
>
> The 'path' variable can be a local path or a URL. Are you seriously
> suggesting that we need to convert every use of a path into a union of
a
> local path and a URL? Bleck. That sure as hell makes working with the
API
> a
> lot harder.
>
No, I'm only suggesting that you need to convert every externally
visible API below libsvn_client to do that. Libsvn_client could stay the
same if you wanted and just accept char * paths.
Besides, look at the code for the function you specified anyway.
Changing the API so that it took either a path, or a URI struct doesn't
matter. The caller can just as easily determine whether it's an URI or
not. It's the resulting type safety that cascades down your prototypes
that helps clarify the code.
Cheers,
Bill
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Jun 26 11:25:35 2002