pyo3/tests
newcomertv 88f2f6f4d5
feat: support pyclass on tuple enums (#4072)
* feat: support pyclass on tuple enums

* cargo fmt

* changelog

* ruff format

* rebase with adaptation for FnArg refactor

* fix class.md from pr comments

* add enum tuple variant getitem implementation

* fmt

* progress toward getitem and len impl on derive pyclass for complex enum tuple

* working getitem and len slots for complex tuple enum pyclass derivation

* refactor code generation

* address PR concerns
- take py from function argument on get_item
- make more general slot def implementation
- remove unnecessary function arguments
- add testcases for uncovered cases including future feature match_args

* add tracking issue

* fmt

* ruff

* remove me

* support match_args for tuple enum

* integrate FnArg now takes Cow

* fix empty and single element tuples

* use impl_py_slot_def for cimplex tuple enum slots

* reverse erroneous doc change

* Address latest comments

* formatting suggestion

* fix :
- clippy beta
- better compile error (+related doc and test)

---------

Co-authored-by: Chris Arderne <chris@translucent.app>
2024-05-17 02:59:00 +00:00
..
ui feat: support pyclass on tuple enums (#4072) 2024-05-17 02:59:00 +00:00
test_anyhow.rs deprecate `wrap_pyfunction` with `py` argument (#3954) 2024-03-12 22:57:03 +00:00
test_append_to_inittab.rs Use single-arg form of `#[pymodule]` function in docs and tests (#3899) 2024-02-28 22:36:50 +00:00
test_arithmetics.rs deprecate implicit default for trailing optional arguments (#4078) 2024-05-10 10:34:58 +00:00
test_buffer.rs fix `AsRef` and `Deref` impls on `Bound<T>` (#3879) 2024-02-22 22:38:42 +00:00
test_buffer_protocol.rs Remove deferred reference count increments and make the global reference pool optional (#4095) 2024-05-11 14:48:45 +00:00
test_bytes.rs Remove deferred reference count increments and make the global reference pool optional (#4095) 2024-05-11 14:48:45 +00:00
test_class_attributes.rs port `Python::get_type` to `Bound` API (#3846) 2024-02-18 18:27:19 +00:00
test_class_basics.rs Remove deferred reference count increments and make the global reference pool optional (#4095) 2024-05-11 14:48:45 +00:00
test_class_conversion.rs Remove deferred reference count increments and make the global reference pool optional (#4095) 2024-05-11 14:48:45 +00:00
test_class_new.rs deprecate the use of `PyCell` in favor of `Bound` and `Py` (#3916) 2024-03-03 14:47:25 +00:00
test_compile_error.rs feature gate `PyCell` (#4177) 2024-05-12 18:30:08 +00:00
test_coroutine.rs Update MSRV to 1.63 (#4129) 2024-04-28 16:11:28 +00:00
test_datetime.rs port `Python::import` to `Bound` API (#3832) 2024-02-14 00:24:37 +00:00
test_datetime_import.rs port `Python::import` to `Bound` API (#3832) 2024-02-14 00:24:37 +00:00
test_declarative_module.rs fix declarative module compile error with `create_exception!` (#4086) 2024-04-16 20:12:18 +00:00
test_default_impls.rs tests/common.rs -> src/tests/common.rs 2023-09-24 13:34:53 +01:00
test_dict_iter.rs port `IntoPyDict` to `Bound` API 2024-02-10 15:47:26 +01:00
test_enum.rs deprecate `wrap_pyfunction` with `py` argument (#3954) 2024-03-12 22:57:03 +00:00
test_exceptions.rs feature gate deprecated APIs for `PyErr` and exceptions (#4136) 2024-04-30 16:58:53 +00:00
test_field_cfg.rs fix `AsRef` and `Deref` impls on `Bound<T>` (#3879) 2024-02-22 22:38:42 +00:00
test_frompyobject.rs update `#[derive(FromPyObject)]` to use `extract_bound` (#3828) 2024-02-13 00:09:41 +00:00
test_gc.rs Remove deferred reference count increments and make the global reference pool optional (#4095) 2024-05-11 14:48:45 +00:00
test_getter_setter.rs use `extract_argument` for `#[setter]` extraction (#3998) 2024-03-27 15:41:04 +00:00
test_inheritance.rs deprecate GIL refs in function argument (#3847) 2024-03-20 22:35:08 +00:00
test_macro_docs.rs port `Python::get_type` to `Bound` API (#3846) 2024-02-18 18:27:19 +00:00
test_macros.rs deprecate `wrap_pyfunction` with `py` argument (#3954) 2024-03-12 22:57:03 +00:00
test_mapping.rs deprecate implicit default for trailing optional arguments (#4078) 2024-05-10 10:34:58 +00:00
test_methods.rs Remove deferred reference count increments and make the global reference pool optional (#4095) 2024-05-11 14:48:45 +00:00
test_module.rs feature gate APIs using `into_gil_ref` (Part 2) (#4166) 2024-05-09 22:21:48 +00:00
test_multiple_pymethods.rs port `Python::get_type` to `Bound` API (#3846) 2024-02-18 18:27:19 +00:00
test_no_imports.rs Remove deferred reference count increments and make the global reference pool optional (#4095) 2024-05-11 14:48:45 +00:00
test_proto_methods.rs feature gate APIs using `into_gil_ref` (Part 2) (#4166) 2024-05-09 22:21:48 +00:00
test_pyfunction.rs deprecate implicit default for trailing optional arguments (#4078) 2024-05-10 10:34:58 +00:00
test_pyself.rs deprecate the use of `PyCell` in favor of `Bound` and `Py` (#3916) 2024-03-03 14:47:25 +00:00
test_sequence.rs Remove deferred reference count increments and make the global reference pool optional (#4095) 2024-05-11 14:48:45 +00:00
test_serde.rs Remove deferred reference count increments and make the global reference pool optional (#4095) 2024-05-11 14:48:45 +00:00
test_static_slots.rs port `Python::get_type` to `Bound` API (#3846) 2024-02-18 18:27:19 +00:00
test_string.rs deprecate `wrap_pyfunction` with `py` argument (#3954) 2024-03-12 22:57:03 +00:00
test_super.rs deprecate the use of `PyCell` in favor of `Bound` and `Py` (#3916) 2024-03-03 14:47:25 +00:00
test_text_signature.rs deprecate implicit default for trailing optional arguments (#4078) 2024-05-10 10:34:58 +00:00
test_unsendable_dict.rs Use Python:;with_gil in tests 2022-07-19 19:34:23 +02:00
test_variable_arguments.rs deprecate GIL refs in function argument (#3847) 2024-03-20 22:35:08 +00:00
test_various.rs deprecate `wrap_pyfunction` with `py` argument (#3954) 2024-03-12 22:57:03 +00:00
test_wrap_pyfunction_deduction.rs feature gate `as/into_gil_ref` APIs (Part 3) (#4172) 2024-05-10 17:03:57 +00:00