mirror of
https://github.com/pybind/pybind11.git
synced 2026-03-14 20:27:47 +00:00
Add type_caster<std::monostate> (#3818)
* Add type_caster<std::monostate> for std::variant Add type_caster<std::monostate>, allowing std::variant<std::monostate, ...> * Add variant<std::monostate, ...> test methods * Add std::monostate tests * Update test_stl.py Remove erroneous extra tests * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Update test fn name * And update the doc() test Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
This commit is contained in:
@@ -263,6 +263,22 @@ def test_variant(doc):
|
||||
)
|
||||
|
||||
|
||||
@pytest.mark.skipif(
|
||||
not hasattr(m, "load_monostate_variant"), reason="no std::monostate"
|
||||
)
|
||||
def test_variant_monostate(doc):
|
||||
assert m.load_monostate_variant(None) == "std::monostate"
|
||||
assert m.load_monostate_variant(1) == "int"
|
||||
assert m.load_monostate_variant("1") == "std::string"
|
||||
|
||||
assert m.cast_monostate_variant() == (None, 5, "Hello")
|
||||
|
||||
assert (
|
||||
doc(m.load_monostate_variant)
|
||||
== "load_monostate_variant(arg0: Union[None, int, str]) -> str"
|
||||
)
|
||||
|
||||
|
||||
def test_vec_of_reference_wrapper():
|
||||
"""#171: Can't return reference wrappers (or STL structures containing them)"""
|
||||
assert (
|
||||
|
||||
Reference in New Issue
Block a user