46 : _list_table{
nullptr}
56 const char* _flag_name;
57 const char* _list_name;
60 bool _one_list_iterator;
71 const char* flag_name,
const list_interface&
list,
size_t i,
bool one_list_only =
false
73 : _flag_name(flag_name)
76 , _one_list_iterator(one_list_only)
104 _list.next(_flag_name, _list_name, _i, _one_list_iterator);
122 inkAssert(
false,
"Not implemented function from interfaces is called!");
127 virtual void add(
const char* flag)
129 inkAssert(
false,
"Not implemented function from interface is called!");
135 inkAssert(
false,
"Not implemented function from interface is called!");
141 inkAssert(
false,
"Not implemented function from interface is called!");
142 return new_iterator(
nullptr, -1);
148 inkAssert(
false,
"Not implemented function from interface is called!");
149 return new_iterator(
nullptr, -1);
155 inkAssert(
false,
"Not implemented function from interface is called!");
156 return new_iterator(
nullptr, -1);
163 next(
const char*& flag_name,
const char*& list_name,
int& i,
bool _one_list_iterator)
const
165 inkAssert(
false,
"Not implemented funciton from interface is called!");
170 iterator new_iterator(
const char* flag_name,
int i,
bool one_list_only =
false)
const
172 return iterator(flag_name, *
this, i, one_list_only);
176 list_interface(internal::list_table& table,
int list)
177 : _list_table{&table}
183 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:55
iterator & operator++()
continue iterator to next value
Definition list.h:102
bool operator!=(const iterator &itr) const
checks if iterator points not to the same element
Definition list.h:111
Flag operator*() const
access value the iterator is pointing to
Definition list.h:99
bool operator==(const iterator &itr) const
checks if iterator points to the same element
Definition list.h:116
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:120
virtual iterator begin() const
begin iterator for contained flags in list
Definition list.h:139
virtual void remove(const char *flag)
removes a flag from list
Definition list.h:133
virtual void add(const char *flag)
add a flag to list
Definition list.h:127
virtual iterator begin(const char *list_name) const
returns a iterator over elements of the given list
Definition list.h:146
virtual iterator end() const
end iterator for contained flags in list
Definition list.h:153
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:125
contains flag data
Definition list.h:82
const char * flag_name
name of the flag
Definition list.h:83
const char * list_name
name of the list
Definition list.h:84
friend std::ostream & operator<<(std::ostream &os, const Flag &flag)
serelization operator
Definition list.h:90