source: doc/papers/general/evaluation/cpp-vstack.hpp @ 81e8ab0

ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsdeferred_resndemanglerenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprnew-envno_listpersistent-indexerpthread-emulationqualifiedEnumresolv-newwith_gc
Last change on this file since 81e8ab0 was 81e8ab0, checked in by Peter A. Buhr <pabuhr@…>, 6 years ago

more updates

  • Property mode set to 100644
File size: 437 bytes
RevLine 
[604e76d]1#pragma once
2#include "object.hpp"
3
[81e8ab0]4struct 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.