]> git.llucax.com Git - z.facultad/75.42/calculadora.git/blob - variable_list.c
Últimos retoques.
[z.facultad/75.42/calculadora.git] / variable_list.c
1 /* vim: set et sts=4 sw=4 fdm=indent fdl=1 fdn=0 fo+=t tw=80:
2  *
3  * Taller de Programación (75.42).
4  *
5  * Ejercicio Número 2:
6  * Programa calculadora.
7  *
8  * Copyleft 2003 - Leandro Lucarella <llucare@fi.uba.ar>
9  * Puede copiar, modificar y distribuir este programa bajo los términos de
10  * la licencia GPL (http://www.gnu.org/).
11  *
12  * Creado: mar sep 16 01:59:36 ART 2003
13  *
14  * $Id$
15  */
16
17 #include "bool.h"
18 #include "dllist.h"
19 #include "variable.h"
20 #include "variable_list.h"
21 #include <stdlib.h>
22 #include <stdio.h>
23 #include <string.h>
24
25 #include "memdebug_debugger.h"
26
27 bool DLList_variable_find(DLList* l, const char* var) {
28     Variable* v;
29     for (v = DLList_begin(l); DLList_have_more(l); v = DLList_next(l)) {
30         if (!strcmp(v->variable, var)) {
31             return TRUE;
32         }
33     }
34     return FALSE;
35 }
36
37 size_t DLList_variable_print(DLList* l, FILE* fp) {
38     size_t cant = 0;
39     Variable* v;
40     for (v = DLList_begin(l); DLList_have_more(l); v = DLList_next(l)) {
41         cant += Variable_print(v, fp);
42     }
43     return cant;
44 }
45
46 void DLList_variable_delete(DLList* l) {
47     if (l) {
48         while (!DLList_empty(l)) {
49             Variable_delete((Variable*)DLList_pop(l));
50         }
51     }
52     DLList_delete(l);
53 }
54