mirror of
https://github.com/pybind/pybind11.git
synced 2024-11-11 08:03:55 +00:00
Merge pull request #212 from abergmeier/master
Increase available information on invocation error.
This commit is contained in:
commit
ec10c20ba5
@ -29,7 +29,7 @@ kw_func(x=5, y=10)
|
|||||||
kw_func(x=5, y=10)
|
kw_func(x=5, y=10)
|
||||||
Caught expected exception: Incompatible function arguments. The following argument types are supported:
|
Caught expected exception: Incompatible function arguments. The following argument types are supported:
|
||||||
1. (x : int = 100L, y : int = 200L) -> NoneType
|
1. (x : int = 100L, y : int = 200L) -> NoneType
|
||||||
|
Invoked with:
|
||||||
kw_func4: 13 17
|
kw_func4: 13 17
|
||||||
kw_func4: 1 2 3
|
kw_func4: 1 2 3
|
||||||
kw_func(x=1234, y=5678)
|
kw_func(x=1234, y=5678)
|
||||||
|
@ -11,7 +11,7 @@ Got void ptr : 0x7f9ba0f3c430
|
|||||||
Called Example1 destructor (0)
|
Called Example1 destructor (0)
|
||||||
Caught expected exception: Incompatible function arguments. The following argument types are supported:
|
Caught expected exception: Incompatible function arguments. The following argument types are supported:
|
||||||
1. (capsule) -> NoneType
|
1. (capsule) -> NoneType
|
||||||
|
Invoked with: [1, 2, 3]
|
||||||
None
|
None
|
||||||
Got null str : 0x0
|
Got null str : 0x0
|
||||||
<example.StringList object at 0x10d3277a0>
|
<example.StringList object at 0x10d3277a0>
|
||||||
|
@ -14,7 +14,7 @@ Polly is a parrot
|
|||||||
Molly is a dog
|
Molly is a dog
|
||||||
The following error is expected: Incompatible function arguments. The following argument types are supported:
|
The following error is expected: Incompatible function arguments. The following argument types are supported:
|
||||||
1. (example.Dog) -> NoneType
|
1. (example.Dog) -> NoneType
|
||||||
|
Invoked with: <Pet object at 0>
|
||||||
Callback function 1 called!
|
Callback function 1 called!
|
||||||
False
|
False
|
||||||
Callback function 2 called : Hello, x, True, 5
|
Callback function 2 called : Hello, x, True, 5
|
||||||
|
@ -7,8 +7,8 @@ Yay..
|
|||||||
0==0, 1==1, 2==2, 3==3, 4==4, 5==5, 6==6, 7==7, 8==8, 9==9,
|
0==0, 1==1, 2==2, 3==3, 4==4, 5==5, 6==6, 7==7, 8==8, 9==9,
|
||||||
Failed as expected: Incompatible function arguments. The following argument types are supported:
|
Failed as expected: Incompatible function arguments. The following argument types are supported:
|
||||||
1. (example.issues.ElementA) -> NoneType
|
1. (example.issues.ElementA) -> NoneType
|
||||||
|
Invoked with: None
|
||||||
Failed as expected: Incompatible function arguments. The following argument types are supported:
|
Failed as expected: Incompatible function arguments. The following argument types are supported:
|
||||||
1. (int) -> int
|
1. (int) -> int
|
||||||
|
Invoked with: 5.2
|
||||||
12.0
|
12.0
|
||||||
|
@ -422,6 +422,14 @@ protected:
|
|||||||
msg += it2->signature;
|
msg += it2->signature;
|
||||||
msg += "\n";
|
msg += "\n";
|
||||||
}
|
}
|
||||||
|
msg += " Invoked with: ";
|
||||||
|
tuple args_(args, true);
|
||||||
|
for( std::size_t ti = 0; ti != args_.size(); ++ti)
|
||||||
|
{
|
||||||
|
msg += static_cast<std::string>(static_cast<object>(args_[ti]).str());
|
||||||
|
if ((ti + 1) != args_.size() )
|
||||||
|
msg += ", ";
|
||||||
|
}
|
||||||
PyErr_SetString(PyExc_TypeError, msg.c_str());
|
PyErr_SetString(PyExc_TypeError, msg.c_str());
|
||||||
return nullptr;
|
return nullptr;
|
||||||
} else if (!result) {
|
} else if (!result) {
|
||||||
|
Loading…
Reference in New Issue
Block a user