46 : _list_table{
nullptr}
58 const char* _flag_name;
59 const char* _list_name;
62 bool _one_list_iterator;
73 : _flag_name(flag_name)
77 , _one_list_iterator(one_list_only)
105 _list.next(_flag_name, _list_name, _i, _one_list_iterator);
124# pragma GCC diagnostic push
125# pragma GCC diagnostic ignored "-Wunused-parameter"
127# pragma warning(push)
129 disable : 4100, justification : "non functional prototypes do not need the argument." \
136 inkAssert(
false,
"Not implemented function from interfaces is called!");
141 virtual void add(
const char* flag)
143 inkAssert(
false,
"Not implemented function from interface is called!");
149 inkAssert(
false,
"Not implemented function from interface is called!");
155 inkAssert(
false,
"Not implemented function from interface is called!");
156 return new_iterator(
nullptr, -1);
162 inkAssert(
false,
"Not implemented function from interface is called!");
163 return new_iterator(
nullptr, -1);
169 inkAssert(
false,
"Not implemented function from interface is called!");
170 return new_iterator(
nullptr, -1);
177 next(
const char*& flag_name,
const char*& list_name,
int& i,
bool _one_list_iterator)
const
179 inkAssert(
false,
"Not implemented funciton from interface is called!");
183# pragma GCC diagnostic pop
190 iterator new_iterator(
const char* flag_name,
int i,
bool one_list_only =
false)
const
192 return iterator(flag_name, *
this, i, one_list_only);
196 list_interface(internal::list_table& table,
int list)
197 : _list_table{&table}
203 internal::list_table* _list_table;
int ink_list_flags_from(const HInkList *self, const char *list_name, InkListIter *iter)
Creates an Iterator over all flags contained in a list assziated with a defined list.
int ink_list_flags(const HInkList *self, InkListIter *iter)
Creates an Iterator over all flags contained in a list.
iterater for flags in a list
Definition list.h:57
iterator & operator++()
continue iterator to next value
Definition list.h:103
bool operator!=(const iterator &itr) const
checks if iterator points not to the same element
Definition list.h:112
Flag operator*() const
access value the iterator is pointing to
Definition list.h:100
bool operator==(const iterator &itr) const
checks if iterator points to the same element
Definition list.h:117
Interface for accessing a Ink list.
Definition list.h:43
virtual bool contains(const char *flag) const
checks if a flag is contained in the list
Definition list.h:134
virtual iterator begin() const
begin iterator for contained flags in list
Definition list.h:153
virtual void remove(const char *flag)
removes a flag from list
Definition list.h:147
virtual void add(const char *flag)
add a flag to list
Definition list.h:141
virtual iterator begin(const char *list_name) const
returns a iterator over elements of the given list
Definition list.h:160
virtual iterator end() const
end iterator for contained flags in list
Definition list.h:167
Contaning all modules and classes used for the inkles ink runtime.
Definition choice.h:13
list_interface * list
alias for ink::runtime::list_interface pointer
Definition types.h:24
Iterater used to iterate flags of a HInkList.
Definition inkcpp.h:127
contains flag data
Definition list.h:83
const char * flag_name
name of the flag
Definition list.h:84
const char * list_name
name of the list
Definition list.h:85
friend std::ostream & operator<<(std::ostream &os, const Flag &flag)
serelization operator
Definition list.h:91