GUIFramework 1.1.0
Framework for desktop GUI applications in C++.
Loading...
Searching...
No Matches
loadable_forward_iterator.h
Go to the documentation of this file.
1#pragma once
2
4
5namespace gui_framework
6{
7 namespace iterators
8 {
10 class GUI_FRAMEWORK_API loadable_forward_iterator : public interfaces::IBaseForwardIterator<std::filesystem::path, loadable_forward_iterator>
11 {
12 private:
13 std::vector<std::filesystem::path> data;
14 size_t currentIndex;
15
16 public:
17 loadable_forward_iterator(std::vector<std::filesystem::path>&& data, size_t index) noexcept;
18
19 std::filesystem::path* operator * () noexcept override;
20
21 const std::filesystem::path* operator * () const noexcept override;
22
23 std::filesystem::path* operator -> () noexcept override;
24
25 const std::filesystem::path* operator -> () const noexcept override;
26
27 loadable_forward_iterator& operator ++ () noexcept override;
28
29 loadable_forward_iterator operator ++ (int) noexcept override;
30
32
34
36 };
37 }
38}
#define GUI_FRAMEWORK_API
Base interface for forward iterators.
IBaseConstForwardIterator implementation for BaseLoadableHolder.
IBaseForwardIterator implementation for BaseLoadableHolder.