- Timestamp:
- Mar 9, 2018, 2:28:09 PM (6 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, with_gc
- Children:
- 200b2b5, e2c70ab
- Parents:
- e84382b
- Location:
- doc/papers/general
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
doc/papers/general/Paper.tex
re84382b r860f19f 2637 2637 & \CT{C} & \CT{\CFA} & \CT{\CC} & \CT{\CCV} \\ \hline 2638 2638 maximum memory usage (MB) & 10,001 & 2,502 & 2,503 & 11,253 \\ 2639 source code size (lines) & 19 7 & 186 & 125 & 293\\2639 source code size (lines) & 196 & 186 & 125 & 290 \\ 2640 2640 redundant type annotations (lines) & 27 & 0 & 2 & 16 \\ 2641 2641 binary size (KB) & 14 & 257 & 14 & 37 \\ … … 2843 2843 } 2844 2844 _Bool stack_empty( const struct stack * s ) { return s->head == NULL; } 2845 void push_stack( struct stack * s, void * v alue) {2845 void push_stack( struct stack * s, void * v ) { 2846 2846 struct stack_node * n = malloc( sizeof(struct stack_node) ); /***/ 2847 *n = (struct stack_node){ v alue, s->head }; /***/2847 *n = (struct stack_node){ v, s->head }; /***/ 2848 2848 s->head = n; 2849 2849 } … … 2968 2968 node * head; 2969 2969 stack() : head( nullptr ) {} 2970 stack( const stack<T> & o) { copy( o ); } 2971 stack( stack<T> && o ) : head( o.head ) { o.head = nullptr; } 2970 stack( const stack<T> & o ) { copy( o ); } 2972 2971 void clear() { 2973 2972 for ( node * next = head; next; ) { -
doc/papers/general/evaluation/c-stack.c
re84382b r860f19f 38 38 _Bool stack_empty( const struct stack * s ) { return s->head == NULL; } 39 39 40 void push_stack( struct stack * s, void * v alue) {40 void push_stack( struct stack * s, void * v ) { 41 41 struct stack_node * n = malloc( sizeof(struct stack_node) ); /***/ 42 *n = (struct stack_node){ v alue, s->head }; /***/42 *n = (struct stack_node){ v, s->head }; /***/ 43 43 s->head = n; 44 44 } -
doc/papers/general/evaluation/cpp-stack.hpp
re84382b r860f19f 12 12 stack() : head( nullptr ) {} 13 13 stack( const stack<T> & o ) { copy( o ); } 14 stack( stack<T> && o ) : head( o.head ) { o.head = nullptr; }15 14 16 15 void clear() { -
doc/papers/general/evaluation/cpp-vstack.cpp
re84382b r860f19f 24 24 stack::stack() : head( nullptr ) {} 25 25 stack::stack( const stack & o ) { copy( o ); } 26 stack::stack( stack && o ) : head( o.head ) { o.head = nullptr; }27 26 stack::~stack() { clear(); } 28 27 … … 31 30 clear(); 32 31 copy( o ); 33 return *this;34 }35 36 stack & stack::operator=( stack && o ) {37 if ( this == &o ) return *this;38 head = o.head;39 o.head = nullptr;40 32 return *this; 41 33 } -
doc/papers/general/evaluation/cpp-vstack.hpp
re84382b r860f19f 15 15 stack(); 16 16 stack( const stack & o ); 17 stack( stack && o );18 17 ~stack(); 19 18 stack & operator=( const stack& o ); 20 stack & operator=( stack && o );21 19 bool empty() const; 22 20 void push( const object & value );
Note: See TracChangeset
for help on using the changeset viewer.