template<typename T> class list{
list();
list(list &in other);
list& opAssign(list &in other);
void SetDirectcomp(bool yesno);
int size();
void clear();
bool empty();
int count(T &in value);
void push_back(T &in value);
void push_front(T &in value);
void pop_back();
void pop_front();
T& back();
T& front();
void insert_index_before(int index,const T &in value);
void erase_index(int index);
void erase_index(int index_range_begin,int index_range_end);
void erase_value(T &in value,bool all = false);
void sort(bool ascending = true);
void sort(aatc_funcpointer@ func,bool ascending = true)
list_iterator<T> begin();
list_iterator<T> end();
bool erase(const list_iterator<T> &in iterator);
int erase(const list_iterator<T> &in iterator_range_begin, const list_iterator<T> &in iterator_range_end);
list_iterator<T> find_iterator(const T &in value);
void insert(const list_iterator<T> &in iterator, const T &in value)
};