Now if a user includes @pybind or @pybind//:pybind as a dependency, it errors out. Ideally you could solve this by turning this list into a set, adding the list to it then creating a list from it ...
I defined an iterable class in pybind11 by creating a __getitem__ method which throws a std::out_of_range exception if the index is out of range. While this successfully stops the iteration in python ...