/data/stack.d
http://github.com/wilkie/djehuty · D · 35 lines · 26 code · 9 blank · 0 comment · 0 complexity · 7601e7b1d93b0db5d6cda5af2da3721f MD5 · raw file
- module data.stack;
- import data.list;
- import io.console;
- class Stack(T) : List!(T) {
- this() {
- super();
- }
- this(uint size) {
- super(size);
- }
- this(T[] withList) {
- _data = withList.dup;
- _count = _data.length;
- }
- Stack!(T) dup() {
- return new Stack!(T)(_data[0.._count]);
- }
- T pop() {
- T ret;
- ret = remove();
- return ret;
- }
- void push(T item) {
- add(item);
- }
- }