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);
|
static constexpr auto name = const_name(PYBIND11_BYTES_NAME);
|
||||||
};
|
};
|
||||||
template <>
|
template <>
|
||||||
|
struct handle_type_name<buffer> {
|
||||||
|
static constexpr auto name = const_name("Buffer");
|
||||||
|
};
|
||||||
|
template <>
|
||||||
struct handle_type_name<int_> {
|
struct handle_type_name<int_> {
|
||||||
static constexpr auto name = const_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");
|
static constexpr auto name = const_name("Callable");
|
||||||
};
|
};
|
||||||
template <>
|
template <>
|
||||||
|
struct handle_type_name<handle> {
|
||||||
|
static constexpr auto name = handle_type_name<object>::name;
|
||||||
|
};
|
||||||
|
template <>
|
||||||
struct handle_type_name<none> {
|
struct handle_type_name<none> {
|
||||||
static constexpr auto name = const_name("None");
|
static constexpr auto name = const_name("None");
|
||||||
};
|
};
|
||||||
template <>
|
template <>
|
||||||
|
struct handle_type_name<sequence> {
|
||||||
|
static constexpr auto name = const_name("Sequence");
|
||||||
|
};
|
||||||
|
template <>
|
||||||
struct handle_type_name<args> {
|
struct handle_type_name<args> {
|
||||||
static constexpr auto name = const_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.shape == pyinfo.shape
|
||||||
assert cinfo.strides == pyinfo.strides
|
assert cinfo.strides == pyinfo.strides
|
||||||
assert not cinfo.readonly
|
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)
|
1. m.factory_constructors.TestFactory1(arg0: m.factory_constructors.tag.unique_ptr_tag, arg1: int)
|
||||||
2. m.factory_constructors.TestFactory1(arg0: str)
|
2. m.factory_constructors.TestFactory1(arg0: str)
|
||||||
3. m.factory_constructors.TestFactory1(arg0: m.factory_constructors.tag.pointer_tag)
|
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'
|
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
|
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
|
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():
|
def test_map_iterator():
|
||||||
sm = m.StringMap({"hi": "bye", "black": "white"})
|
sm = m.StringMap({"hi": "bye", "black": "white"})
|
||||||
assert sm["hi"] == "bye"
|
assert sm["hi"] == "bye"
|
||||||
|
Loading…
Reference in New Issue
Block a user