3#include "MRPch/MRBindingMacros.h"
37 using Storage = std::vector<std::shared_ptr<Object>>;
51 explicit Iterator( Storage::const_iterator it ) : it_( it ) {}
54 Iterator & operator ++() { ++it_;
return *
this; }
55 Iterator operator ++(
int ) {
auto res = *
this; ++it_;
return res; }
59 Storage::const_iterator it_{};
67 [[nodiscard]]
bool empty()
const {
return children_.empty(); }
68 [[nodiscard]]
size_t size()
const {
return children_.size(); }
69 [[nodiscard]] std::shared_ptr<const Object>
operator [](
size_t i )
const {
return children_[i]; }
constexpr bool operator==(ImVec2 a, ImVec2 b)
Definition MRImGuiVectorOperators.h:117
constexpr auto operator*(A a, B b)
Definition MRImGuiVectorOperators.h:107
dereferences to std::shared_ptr<const Object>, constructed on each dereference
Definition MRConstChildren.h:41
std::shared_ptr< const Object > value_type
Definition MRConstChildren.h:47
Iterator()
Definition MRConstChildren.h:50
size_t size() const
Definition MRConstChildren.h:68
ConstChildren(const Storage &children)
Definition MRConstChildren.h:62
bool empty() const
Definition MRConstChildren.h:67
Iterator(Storage::const_iterator it)
Definition MRConstChildren.h:51
MR_BIND_IGNORE_PY Iterator begin() const
Definition MRConstChildren.h:64
std::vector< std::shared_ptr< Object > > Storage
Definition MRConstChildren.h:37
std::input_iterator_tag iterator_category
Definition MRConstChildren.h:46
MR_BIND_IGNORE_PY Iterator end() const
Definition MRConstChildren.h:65
std::shared_ptr< const Object > operator[](size_t i) const
Definition MRConstChildren.h:69
std::ptrdiff_t difference_type
Definition MRConstChildren.h:48
std::forward_iterator_tag iterator_concept
Definition MRConstChildren.h:45
only for bindings generation
Definition MRCameraOrientationPlugin.h:8