mirror of
https://github.com/pybind/pybind11.git
synced 2024-11-22 05:05:11 +00:00
Update render for buffer sequence and handle (#4831)
* fix: Add capitalize render name of `py::buffer` and `py::sequence`
* fix: Render `py::handle` same way as `py::object`
* tests: Fix tests `handle` -> `object`
* tests: Test capitaliation of `py::sequence` and `py::buffer`
* style: pre-commit fixes
* fix: Render `py::object` as `Any`
* Revert "fix: Render `py::object` as `Any`"
This reverts commit 7861dcfabb
.
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Ralf W. Grosse-Kunstleve <rwgk@google.com>
This commit is contained in:
parent
c9149d995c
commit
b4573674bc
@ -882,6 +882,10 @@ struct handle_type_name<bytes> {
|
||||
static constexpr auto name = const_name(PYBIND11_BYTES_NAME);
|
||||
};
|
||||
template <>
|
||||
struct handle_type_name<buffer> {
|
||||
static constexpr auto name = const_name("Buffer");
|
||||
};
|
||||
template <>
|
||||
struct handle_type_name<int_> {
|
||||
static constexpr auto name = const_name("int");
|
||||
};
|
||||
@ -902,10 +906,18 @@ struct handle_type_name<function> {
|
||||
static constexpr auto name = const_name("Callable");
|
||||
};
|
||||
template <>
|
||||
struct handle_type_name<handle> {
|
||||
static constexpr auto name = handle_type_name<object>::name;
|
||||
};
|
||||
template <>
|
||||
struct handle_type_name<none> {
|
||||
static constexpr auto name = const_name("None");
|
||||
};
|
||||
template <>
|
||||
struct handle_type_name<sequence> {
|
||||
static constexpr auto name = const_name("Sequence");
|
||||
};
|
||||
template <>
|
||||
struct handle_type_name<args> {
|
||||
static constexpr auto name = const_name("*args");
|
||||
};
|
||||
|
@ -219,3 +219,10 @@ def test_ctypes_from_buffer():
|
||||
assert cinfo.shape == pyinfo.shape
|
||||
assert cinfo.strides == pyinfo.strides
|
||||
assert not cinfo.readonly
|
||||
|
||||
|
||||
def test_buffer_docstring():
|
||||
assert (
|
||||
m.get_buffer_info.__doc__.strip()
|
||||
== "get_buffer_info(arg0: Buffer) -> pybind11_tests.buffers.buffer_info"
|
||||
)
|
||||
|
@ -77,7 +77,7 @@ def test_init_factory_signature(msg):
|
||||
1. m.factory_constructors.TestFactory1(arg0: m.factory_constructors.tag.unique_ptr_tag, arg1: int)
|
||||
2. m.factory_constructors.TestFactory1(arg0: str)
|
||||
3. m.factory_constructors.TestFactory1(arg0: m.factory_constructors.tag.pointer_tag)
|
||||
4. m.factory_constructors.TestFactory1(arg0: handle, arg1: int, arg2: handle)
|
||||
4. m.factory_constructors.TestFactory1(arg0: object, arg1: int, arg2: object)
|
||||
|
||||
Invoked with: 'invalid', 'constructor', 'arguments'
|
||||
"""
|
||||
@ -95,7 +95,7 @@ def test_init_factory_signature(msg):
|
||||
|
||||
3. __init__(self: m.factory_constructors.TestFactory1, arg0: m.factory_constructors.tag.pointer_tag) -> None
|
||||
|
||||
4. __init__(self: m.factory_constructors.TestFactory1, arg0: handle, arg1: int, arg2: handle) -> None
|
||||
4. __init__(self: m.factory_constructors.TestFactory1, arg0: object, arg1: int, arg2: object) -> None
|
||||
"""
|
||||
)
|
||||
|
||||
|
@ -171,6 +171,10 @@ def test_sequence_length():
|
||||
assert m.sequence_length("hello") == 5
|
||||
|
||||
|
||||
def test_sequence_doc():
|
||||
assert m.sequence_length.__doc__.strip() == "sequence_length(arg0: Sequence) -> int"
|
||||
|
||||
|
||||
def test_map_iterator():
|
||||
sm = m.StringMap({"hi": "bye", "black": "white"})
|
||||
assert sm["hi"] == "bye"
|
||||
|
Loading…
Reference in New Issue
Block a user