source:
doc/papers/general/evaluation/cpp-vstack.hpp
@
81e8ab0
Last change on this file since 81e8ab0 was 81e8ab0, checked in by , 6 years ago | |
---|---|
|
|
File size: 437 bytes |
Rev | Line | |
---|---|---|
[604e76d] | 1 | #pragma once |
2 | #include "object.hpp" | |
3 | ||
[81e8ab0] | 4 | struct stack { |
[604e76d] | 5 | struct node { |
6 | ptr<object> value; | |
[81e8ab0] | 7 | node * next; |
8 | node( const object & v, node * n = nullptr ); | |
[604e76d] | 9 | }; |
[81e8ab0] | 10 | node * head; |
11 | ||
12 | void copy( const stack & o ); | |
[604e76d] | 13 | |
14 | stack(); | |
[81e8ab0] | 15 | stack( const stack & o ); |
16 | stack( stack && o ); | |
[604e76d] | 17 | ~stack(); |
[81e8ab0] | 18 | stack& operator=( const stack& o ); |
19 | stack& operator=( stack && o ); | |
[604e76d] | 20 | |
21 | void clear(); | |
22 | bool empty() const; | |
[81e8ab0] | 23 | void push( const object & value ); |
[604e76d] | 24 | ptr<object> pop(); |
25 | }; |
Note: See TracBrowser
for help on using the repository browser.