The C STL contains interface and implementation files that mimic the C++ STL.
The basic data unit used for the containers can be found in generics.h. This type is a basic union that can be used to represent any desired data type.
union DATA {
// int my_int;
// float my_float;
// char *my_string;
};The ARRAY data type has been implemented. The following functionality exists:
- creation
- deletion
- lookup
- arbitrary
- front
- back
- clearing (set all values to 0)
- check if empty
- filling (set all values to custom value)
- iterate and apply function
- accepts a function pointer and calls it on each value
- check the size
The VECTOR data type has been implemented. The following functionality exists:
- creation
- deletion
- lookup
- arbitrary
- front
- back
- check capacity
- clearing (remove everything from vector)
- check if empty
- erasing (specified index)
- iterate and apply function
- accepts a function pointer and calls it on each value
- insert a value (specified index)
- pop value from end
- push value to end
- resizing
- check size
The DEQUE data type has been implemented. The following functionality exists:
- creation
- deletion
- lookup
- arbitrary
- front
- back
- check capacity
- clearing (remove everything from deque)
- check if empty
- erasing (specified index)
- iterate and apply function
- accepts a function pointer and calls it on each value
- insert a value (specified index)
- pop value from end
- pop value from front
- push value to end
- push value to front
- resizing
- check size
The FORWARD_LIST data type has been implemented. The following functionality exists:
- creation
- deletion
- lookup
- front
- back
- clearing (remove everything from list)
- check if empty
- iterate and apply function
- accepts a function pointer and calls it on each value
- merging of two lists
- pop value from front
- push value to front
- remove value from list
- check size
The LIST data type has been implemented. The following functionality exists:
- creation
- deletion
- lookup
- front
- back
- clearing (remove everything from list)
- check if empty
- iterate and apply function
- accepts a function pointer and calls it on each value
- merging of two lists
- pop value from back
- pop value from front
- push value to back
- push value to front
- remove value from list
- check size
The STACK data type has been implemented. The following functionality exists:
- creation
- deletion
- check if empty
- push value onto stack
- pop value from stack
- check size
- get value on top of stack
The QUEUE data type has been implemented. The following functionality exists:
- creation
- deletion
- lookup
- front
- back
- check if empty
- pop value from front
- push value to back
- check size
The PRIORITY_QUEUE data type has been implemented. The following functionality exists:
- creation
- custom comparators possible
- deletion
- check if empty
- pop value from front
- push value into queue
- check size
- get value at front of queue
Not yet implemented.
Not yet implemented.
Not yet implemented.
Not yet implemented.
Not yet implemented.
Not yet implemented.
Not yet implemented.
Not yet implemented.