Steve Parkinson wrote:
> 1) Private function definitions. SWIG can make wrapper functions for all

I am slightly in favor of explicitly listing the functions to export in
.i files.

> 3) NSS is a fairly object-oriented API. But, it lacks a formal
>  definition of the objects, and how they interrelate. As such, it
>  is not possible to get swig to automate the creation of language
>  specific classes.
> 
>  For example, many of the CERT_* calls just scream out to be attached
>  to an object.

I would suggest what M2Crypto does (which is a Python wrapper for
OpenSSL): SWIG the NSS functions so that they are available in Python as
functions. Then, create the classes etc. Python niceties in Python.

For example, see the simple ASN1_UTCTIME class in M2Crypto:
http://lxr.osafoundation.org/m2crypto/source/M2Crypto/ASN1.py#076

> Heikki - I'm really not that concerned about performance. After all,
> we're talking scripting languages here - I don't think performance is
> the goal.

There is no reason to lose performance unnecessarily. If one has a
possibility of using Python but it is 3 times too slow because SWIG is
used, taking SWIG out of the picture might make it fast enough.

-- 
  Heikki Toivonen
_______________________________________________
dev-tech-crypto mailing list
dev-tech-crypto@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-tech-crypto

Reply via email to