Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
| | * | ENH: ufunc: Made the iterator ufunc default | Mark Wiebe | 2011-01-20 | 1 | -6/+47 | |
| | | | ||||||
| | * | ENH: ufunc: Add support for the __array_prepare__ property of subclassed arrays | Mark Wiebe | 2011-01-20 | 4 | -78/+291 | |
| | | | ||||||
| | * | ENH: ufunc: Restructure iterator ufunc evaluation into functions | Mark Wiebe | 2011-01-20 | 3 | -520/+808 | |
| | | | ||||||
| | * | ENH: ufunc: Simple iterator-based ufunc execution is working | Mark Wiebe | 2011-01-20 | 2 | -40/+173 | |
| | | | ||||||
| | * | ENH: ufunc: Implement the trivial two and three-operand loops | Mark Wiebe | 2011-01-19 | 2 | -10/+60 | |
| | | | ||||||
| | * | ENH: ufunc: Add trivial loop detection macros for triple loops | Mark Wiebe | 2011-01-19 | 3 | -24/+146 | |
| | | | | | | | | | | | | Also allow broadcasting with scalars in trivial loops. | |||||
| | * | ENH: ufunc: Add the main loop selection/type-determination mechanism | Mark Wiebe | 2011-01-19 | 6 | -54/+128 | |
| | | | ||||||
| | * | ENH: core: Clean things up a bit | Mark Wiebe | 2011-01-19 | 5 | -35/+32 | |
| | | | | | | | | | | | | | | | * Make PyArray_CastToType always produce a copy * Remove special cases in ndarray.astype | |||||
| | * | ENH: core: Added numeric casting strided transfer functions, to speed up ↵ | Mark Wiebe | 2011-01-19 | 7 | -86/+496 | |
| | | | | | | | | | | | | simple casts | |||||
| | * | ENH: iter: Switch the iterator to use PyArray_ResultType | Mark Wiebe | 2011-01-18 | 3 | -163/+40 | |
| | | | ||||||
| | * | ENH: doc: Document the new API functions | Mark Wiebe | 2011-01-18 | 1 | -1/+1 | |
| | | | | | | | | | | | | | | | PyArray_CanCastArrayTo, PyArray_MinScalarType, PyArray_PromoteTypes, PyArray_ResultType, PyArray_CountNonzero, and PyArray_CastingConverter. | |||||
| | * | ENH: core: Add functions PyArray_CanCastArrayTo and PyArray_ResultType | Mark Wiebe | 2011-01-18 | 9 | -152/+753 | |
| | | | | | | | | | | | | They have also been exposed to Python. | |||||
| | * | ENH: core: Add PyArray_MinScalarType and expose it to Python | Mark Wiebe | 2011-01-18 | 5 | -1/+307 | |
| | | | ||||||
| | * | ENH: core: Start converting ufunc to new iterator, add PyArray_PromoteTypes | Mark Wiebe | 2011-01-18 | 11 | -27/+533 | |
| | | | ||||||
| | * | ENH: core: Convert remaining data copying to new method, add tests for ↵ | Mark Wiebe | 2011-01-17 | 7 | -122/+103 | |
| | | | | | | | | | | | | overlapping array assignment | |||||
| | * | ENH: core: Change PyArray_MoveInto to use the new iterator as well | Mark Wiebe | 2011-01-17 | 1 | -327/+122 | |
| | | | ||||||
| | * | ENH: core: Change PyArray_CopyAnyInto and PyArray_MoveAnyInto to use the new ↵ | Mark Wiebe | 2011-01-17 | 6 | -345/+227 | |
| | | | | | | | | | | | | | | | | | | | | | | | | iterator I also found that the tricky case of CopyAnyInto wasn't being triggered by the test suite, so added a new function ndarray.setasflat, which calls CopyAnyInto. | |||||
| | * | ENH: core: Replace PyArray_CastTo with a call to PyArray_CopyInto | Mark Wiebe | 2011-01-17 | 4 | -84/+163 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Since CopyInto uses the dtype transfer mechanism to do the copying, this also fully handles casting. This also exposed a byte order issue in the dtype transfer code of converting to object arrays. The switch from position-based structure copying to name-based copying required a small change to a masked array test as well. | |||||
| | * | ENH: core: Add needs_api output boolean from dtype transfer | Mark Wiebe | 2011-01-17 | 7 | -182/+297 | |
| | | | | | | | | | | | | | | | This change allows the NEEDS_PYAPI flag to be re-relaxed from the string, unicode, and void types. | |||||
| | * | ENH: core: Implement PyArray_CopyInto using the new iterator | Mark Wiebe | 2011-01-16 | 7 | -63/+238 | |
| | | | | | | | | | | | | | | | | | | | | | | | | This change also uses the dtype conversion code implemented for new iterator buffering, which differs slightly from the previous casting behavior. In particular, fields are matched up by name instead of position, so code depending on that behavior breaks. The loadtxt function has been fixed to not depend on this casting behavior. | |||||
| | * | ENH: iter: Add macros for detecting and using trivially iterable cases | Mark Wiebe | 2011-01-16 | 2 | -6/+90 | |
| | | | ||||||
| | * | ENH: iter: Change PyArray_StridedTransferFn typedef to match NumPy function ↵ | Mark Wiebe | 2011-01-16 | 4 | -72/+95 | |
| | | | | | | | | | | | | typedefs | |||||
| | * | ENH: iter: Run-length encode the representation of subarray broadcasting in ↵ | Mark Wiebe | 2011-01-16 | 2 | -31/+93 | |
| | | | | | | | | | | | | data transfers | |||||
| | * | ENH: core: Switch nonzero to use the iterator as an example, add ↵ | Mark Wiebe | 2011-01-16 | 9 | -54/+316 | |
| | | | | | | | | | | | | count_nonzero function | |||||
| | * | ENH: iter: Replace the last dtype decref with a transfer function method | Mark Wiebe | 2011-01-15 | 1 | -59/+119 | |
| | | | ||||||
| | * | ENH: iter: Add support for custom dtypes by wrapping copyswap when necessary | Mark Wiebe | 2011-01-15 | 3 | -165/+363 | |
| | | | ||||||
| | * | ENH: iter: Use the new code to do buffer decrefs | Mark Wiebe | 2011-01-15 | 1 | -12/+21 | |
| | | | ||||||
| | * | ENH: iter: Add support for buffering arrays with fields and subarrays | Mark Wiebe | 2011-01-14 | 8 | -1231/+2633 | |
| | | | ||||||
| | * | ENH: iter: Make the transfer buffer size a macro instead of hardcoded 32 | Mark Wiebe | 2011-01-13 | 1 | -27/+64 | |
| | | | ||||||
| | * | ENH: iter: Move cast transfer function logic to its own function | Mark Wiebe | 2011-01-13 | 1 | -140/+209 | |
| | | | ||||||
| | * | ENH: iter: Implement subarray transfer functions | Mark Wiebe | 2011-01-13 | 3 | -42/+667 | |
| | | | ||||||
| | * | ENH: iter: Add support for iterating object arrays | Mark Wiebe | 2011-01-13 | 7 | -36/+220 | |
| | | | ||||||
| | * | ENH: iter: Add check for buffered output allocation without delayed bufalloc | Mark Wiebe | 2011-01-12 | 3 | -14/+52 | |
| | | | | | | | | | | | | | | | | | | | | | When allocating an output and specifying it's to be read, most iteration modes allow the code to fill the allocated output with a value before starting actual iteration. When buffering is enabled and delayed buffer allocation is not, this won't work, so throw an error | |||||
| | * | ENH: iter: Add support for buffering string and unicode arrays | Mark Wiebe | 2011-01-11 | 4 | -74/+292 | |
| | | | ||||||
| | * | BUG: iter: Added missing new_iterator_pywrap.h | Mark Wiebe | 2011-01-10 | 1 | -0/+8 | |
| | | | ||||||
| | * | ENH: iter: Expose PyArray_CastingConverter, add 'K' to PyArray_OrderConverter | Mark Wiebe | 2011-01-09 | 4 | -20/+25 | |
| | | | ||||||
| | * | ENH: iter: Add mechanism to use critical iteration functions without the GIL | Mark Wiebe | 2011-01-09 | 2 | -46/+131 | |
| | | | | | | | | | | | | | | | | | | | | | In particular, the Reset*, GetIterNext, and GetGetCoords functions gain a new parameter 'errmsg'. If a non-NULL value is passed into it, error messages are passed back in this parameter instead of setting the Python exception. | |||||
| | * | ENH: iter: Add access functions for some buffering properties | Mark Wiebe | 2011-01-09 | 2 | -9/+50 | |
| | | | ||||||
| | * | ENH: iter: Split flag NBO_ALIGN into NBO and ALIGN, add CONTIG flag | Mark Wiebe | 2011-01-09 | 4 | -37/+84 | |
| | | | ||||||
| | * | ENH: iter: Add the new iterator to the exposed API | Mark Wiebe | 2011-01-09 | 12 | -440/+488 | |
| | | | | | | | | | | | | | | | | | | | | | To do this, I also removed the search/replace of 'intp' to 'npy_intp', and did that change manually in a number of files. The NOPREFIX macro-based emulation of C++'s "using namespace" feels a bit off to me anyway. | |||||
| | * | ENH: iter: Move new_iterator.h to the include directory | Mark Wiebe | 2011-01-09 | 4 | -5/+4 | |
| | | | ||||||
| | * | ENH: iter: Add NPY_ITER_DELAY_BUFALLOC flag, fix Python iterator wrapper issues | Mark Wiebe | 2011-01-09 | 4 | -194/+398 | |
| | | | ||||||
| | * | ENH: iter: Added NpyIter_Copy function | Mark Wiebe | 2011-01-09 | 6 | -12/+282 | |
| | | | ||||||
| | * | ENH: iter: Add the ability to iterate over iterator index subranges | Mark Wiebe | 2011-01-09 | 4 | -341/+499 | |
| | | | ||||||
| | * | ENH: iter: Make the GROWINNER flag not imply BUFFERED | Mark Wiebe | 2011-01-09 | 4 | -11/+13 | |
| | | | ||||||
| | * | ENH: iter: Add getting and setting of IterIndex, the iteration index | Mark Wiebe | 2011-01-09 | 4 | -34/+258 | |
| | | | ||||||
| | * | ENH: iter: Shorten flag NPY_ITER_C/F_ORDER_INDEX to NPY_ITER_C/F_INDEX | Mark Wiebe | 2011-01-09 | 4 | -61/+61 | |
| | | | ||||||
| | * | ENH: iter: Change the meaning of itersize to be the number of elements, not ↵ | Mark Wiebe | 2011-01-09 | 3 | -37/+43 | |
| | | | | | | | | | | | | the number of iterations | |||||
| | * | ENH: iter: Some more small clean-ups in iterator construction | Mark Wiebe | 2011-01-09 | 1 | -35/+31 | |
| | | | ||||||
| | * | ENH: iter: Clean up iterator creation code | Mark Wiebe | 2011-01-09 | 1 | -255/+274 | |
| | | |