On 06/14/2012 01:53 PM, Antoine Pitrou wrote:
* is_implemented : bool
     True if the parameter is implemented for use.  Some platforms
     implement functions but can't support specific parameters
     (e.g. "mode" for ``os.mkdir``).  Passing in an unimplemented
     parameter may result in the parameter being ignored,
     or in NotImplementedError being raised.  It is intended that
     all conditions where ``is_implemented`` may be False be
     thoroughly documented.
I don't understand what the purpose of is_implemented is, or how it is
supposed to be computed.

It's computed based on locally available functionality. Its purpose is to allow LBYL when using functionality that may not be available on all platforms. See issue 14626 for a specific use-case--which is why I pushed for this.

When all the chips fall into place, I expect to have some code that looks like this:

   os.chown.__signature__.parameters['fd'].is_implemented =
   sysconfig.get_config_var('HAVE_FCHOWN')

That's oversimplified (and almost certainly not spelled correctly) but you get the general idea. os.chown will soon sprout an "fd" parameter, but it will only work on platforms where we have fchown(). Using it will result in a NotImplementedError. But some folks want to LBYL.


//arry/
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to