Baigudin Software avatar
Baigudin Software logo
home
ru region
en region

BOOS Core is unveiled in second revision

BOOS Core Revision 2 has been successfully unveiled within the framework of Baigudin Software project. In comparison with the first revision, the second has gotten considerable improvements. It saves the best features of previous realization and gets the new logical continuation.

Class «eoos::lib::CircularList<T,A>»

Circular doubly linked list.

public:


                                 CircularList();

                                 CircularList(T const illegal);

 virtual                        ~CircularList();

 virtual bool_t                  add(int32_t index, T const& element);

 virtual bool_t                  add(T const& element);

 virtual bool_t                  add(T const& element);

 virtual void                    clear();

 virtual T&                      get(int32_t index);

 virtual T&                      getFirst();

 virtual T const&                getIllegal();

 virtual int32_t                 getIndexOf(T const& element) const;

 virtual api::Iterator<T>*       getIterator();

 virtual T&                      getLast();

 virtual size_t                  getLength();

 virtual api::ListIterator<T>*   getListIterator(int32_t index=0);

 virtual bool_t                  isConstructed() const;

 static bool_t                   isConstructed(api::Object* obj);

 virtual bool_t                  isEmpty();

 virtual bool_t                  isIllegal(T const& value) const;

 virtual bool_t                  isIndex(int32_t index) const;

 static void                     operator delete(void* ptr);

 static void                     operator delete(void*, void*);

 static void*                    operator new(size_t size);

 static void*                    operator new(size_t, void* ptr);

 Object&                         operator=(Object const& obj);

 Object&                         operator=(Object&& obj) & noexcept;

 virtual T&                      peek();

 virtual bool_t                  remove();

 virtual bool_t                  remove(int32_t index);

 virtual bool_t                  removeElement(T const& element);

 virtual bool_t                  removeFirst();

 virtual bool_t                  removeLast();

 virtual void                    setIllegal(T const& value);

public: CircularList();

Constructor.

public: CircularList(T const illegal);

Constructor.

Parameters:
illegal — An illegal element.

public: virtual ~CircularList();

Destructor.

public: virtual bool_t add(int32_t index, T const& element);

Inserts new element to the specified position in this container.

Parameters:
index — A position in this container.
element — An inserting element.

Returns:
True if element is inserted.

public: virtual bool_t add(T const& element);

Inserts new element to the end of this container.

Parameters:
element — An inserting element.

Returns:
True if element is added.

public: virtual bool_t add(T const& element);

Inserts a new element to the end of this container.

Parameters:
element — An inserting element.

Returns:
True if element is added.

public: virtual void clear();

Removes all elements from this container.

public: virtual T& get(int32_t index);

Returns an element from this container by index.

Parameters:
index — Position in this container.

Returns:
Indexed element of this container.

public: virtual T& getFirst();

Returns the first element in this container.

Returns:
The first element in this container.

public: virtual T const& getIllegal();

Returns illegal element which will be returned as error value.

Returns:
Illegal element.

public: virtual int32_t getIndexOf(T const& element) const;

Returns the index of the first occurrence of the specified element in this container.

Parameters:
element — Reference to the element.

Returns:
Index or -1 if this container does not contain the element.

public: virtual api::Iterator<T>* getIterator();

Returns an iterator of elements.

Returns:
Pointer to new iterator.

public: virtual T& getLast();

Returns the last element in this container.

Returns:
The last element in this container.

public: virtual size_t getLength();

Returns a number of elements in this container.

Returns:
Number of elements, or always 0 if an error occurred.

public: virtual api::ListIterator<T>* getListIterator(int32_t index=0);

Parameters:
index — Start position in this container.

Returns:
Pointer to new list iterator.

public: virtual bool_t isConstructed() const;

Tests if this object has been constructed.

Returns:
True if object has been constructed successfully.

public: static bool_t isConstructed(api::Object* obj);

Tests if an object has been constructed.

Parameters:
obj — Object to be tested.

Returns:
True if object has been constructed successfully.

public: virtual bool_t isEmpty();

Tests if this collection has elements.

Returns:
True if this collection does not contain any elements, or always true if an error occurred.

public: virtual bool_t isIllegal(T const& value) const;

Tests if given value is an illegal.

Parameters:
value — A testing value.

Returns:
True if value is an illegal.

public: virtual bool_t isIndex(int32_t index) const;

Tests if given index is available.

Parameters:
index — Checking position in this container.

Returns:
True if index is present.

public: static void operator delete(void* ptr);

Operator delete.

Parameters:
ptr — An address of allocated memory block or a null pointer.

public: static void operator delete(void*, void*);

Operator delete.

public: static void* operator new(size_t size);

Operator new.

Parameters:
size — A number of bytes to allocate.

Returns:
Allocated memory address or a null pointer.

public: static void* operator new(size_t, void* ptr);

Operator new.

Parameters:
ptr — A pointer to reserved memory area.

Returns:
The given pointer.

public: Object& operator=(Object const& obj);

Copy assignment operator.

Parameters:
obj — Reference to a source object.

Returns:
Reference to this object.

public: Object& operator=(Object&& obj) & noexcept;

Move assignment operator.

Parameters:
obj — Right reference to a source object.

Returns:
Reference to this object.

public: virtual T& peek();

Examines the head element of this container.

Returns:
The head element.

public: virtual bool_t remove();

Removes the head element of this container.

Returns:
True if an element is removed successfully.

public: virtual bool_t remove(int32_t index);

Removes the element at the specified position in this container.

Parameters:
index — Position in this container.

Returns:
True if an element is removed successfully.

public: virtual bool_t removeElement(T const& element);

Removes the first occurrence of the specified element from this container.

Parameters:
element — Reference to element.

Returns:
True if an element is removed successfully.

public: virtual bool_t removeFirst();

Removes the first element from this container.

Returns:
True if an element is removed successfully.

public: virtual bool_t removeLast();

Removes the last element from this container.

Returns:
True if an element is removed successfully.

public: virtual void setIllegal(T const& value);

Sets illegal element which will be returned as error value.

Parameters:
value — An illegal value.

Back to class list