[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: svn commit: r13034 - in branches/ruby: . build/ac-macros subversion/bindings/swig subversion/bindings/swig/ruby subversion/bindings/swig/ruby/libsvn_swig_ruby subversion/bindings/swig/ruby/svn subversion/bindings/swig/ruby/svn/ext subversion/bindings/

From: Kouhei Sutou <kou_at_cozmixng.org>
Date: 2005-02-21 05:48:40 CET

Hi,

In <00fc01c5167a$58857690$e6ec6f83@robinson.cam.ac.uk>
  "Max Bowsher" <maxb@ukf.net> wrote:

> >>> * subversion/bindings/swig/ruby/svn/ext/*.rb: [NEW]
> >>> dummy for svn/ext/_*.so.
> >>
> >> Also, why are these present for only three of the _*.so modules?
> >
> > User should not require svn/ext/_*.so directory. They are
> > only required internally in
> > svn_{client,fs,ra,repos,wc}.c. Because
> > svn_{client,fs,ra,repos,wc}.i have some of `%import
> > svn_{delta,fs,wc}.i'.
>
> But why do svn/ext/*.rb exist? Python and Perl don't require extra files
> because of these %import-s.

In Ruby bindings, Svn::Ext::* (Svn::Ext::Client,
Svn::Ext::Core and so on) are API which is generated by SWIG
and Svn::* (Svn::Client, Svn::Core and so on) are API which
is made by me for useful. In Svn::Ext::* layer, we don't
know Svn::*. So svn/ext/_*.so `require "svn/ext/*"'. But I
want svn/ext/_*.so to require svn/*.rb.

svn/ext/*.rb are just wrappers for requiring svn/*.rb. For
example:

  In svn/ext/_client.so: require "svn/ext/delta"
    The code requires svn/ext/delta.rb.
  ->
  In svn/ext/delta.rb: require "svn/delta"
    The code requires svn/delta.rb.
  ->
  In svn/delta.rb: require other svn/*.rb and define useful
  API.

I can hack to remove svn/ext/*.rb. Is it a better way?

Regards,

--
kou
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Mon Feb 21 05:49:49 2005

This is an archived mail posted to the Subversion Dev mailing list.