Tipragot
628be439b8
Cela permet de ne pas avoir de problèmes de compatibilité car python est dans le git.
56 lines
1.2 KiB
ReStructuredText
56 lines
1.2 KiB
ReStructuredText
Miscellaneous native operations
|
|
===============================
|
|
|
|
This is a list of various non-type-specific operations that have
|
|
custom native implementations. If an operation has no native
|
|
implementation, mypyc will use fallback generic implementations that
|
|
are often not as fast.
|
|
|
|
.. note::
|
|
|
|
Operations specific to various primitive types are described
|
|
in the following sections.
|
|
|
|
Operators
|
|
---------
|
|
|
|
* ``x is y`` (this is very fast for all types)
|
|
|
|
Functions
|
|
---------
|
|
|
|
* ``isinstance(obj, type: type)``
|
|
* ``isinstance(obj, type: tuple)``
|
|
* ``cast(<type>, obj)``
|
|
* ``type(obj)``
|
|
* ``len(obj)``
|
|
* ``abs(obj)``
|
|
* ``id(obj)``
|
|
* ``iter(obj)``
|
|
* ``next(iter: Iterator)``
|
|
* ``hash(obj)``
|
|
* ``getattr(obj, attr)``
|
|
* ``getattr(obj, attr, default)``
|
|
* ``setattr(obj, attr, value)``
|
|
* ``hasattr(obj, attr)``
|
|
* ``delattr(obj, name)``
|
|
* ``slice(start, stop, step)``
|
|
* ``globals()``
|
|
|
|
Method decorators
|
|
-----------------
|
|
|
|
* ``@property``
|
|
* ``@staticmethod``
|
|
* ``@classmethod``
|
|
* ``@abc.abstractmethod``
|
|
|
|
Statements
|
|
----------
|
|
|
|
These variants of statements have custom implementations:
|
|
|
|
* ``for ... in seq:`` (for loop over a sequence)
|
|
* ``for ... in enumerate(...):``
|
|
* ``for ... in zip(...):``
|