]> git.llucax.com Git - z.facultad/75.42/calculadora.git/blob - variable.h
Versión preliminar del programa del TP. Falta evaluar ecuaciones.
[z.facultad/75.42/calculadora.git] / variable.h
1 /* vim: set et sts=4 sw=4 fdm=indent fdl=1 fdn=1 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: lun sep 15 18:55:54 ART 2003
13  *
14  * $Id$
15  */
16
17 #ifndef VARIABLE_H
18 #define VARIABLE_H
19
20 #include "bool.h"
21 #include <stdlib.h>
22 #include <stdio.h>
23
24 typedef struct {
25     char* variable;
26     float value;
27     float min;
28     float max;
29     bool  have_min;
30     bool  have_max;
31 } Variable;
32
33 Variable* Variable_new(const char* line, size_t var_start, size_t var_len);
34
35 void Variable_delete(Variable* var);
36
37 /* simplifico el manejo de errores, false si hubo error. */
38 bool Variable_set_value(Variable* var, const char* line, size_t start,
39         size_t len);
40
41 /* simplifico el manejo de errores, false si hubo error. */
42 bool Variable_set_min(Variable* var, const char* line, size_t start,
43         size_t len);
44
45 /* simplifico el manejo de errores, false si hubo error. */
46 bool Variable_set_max(Variable* var, const char* line, size_t start,
47         size_t len);
48
49 /* simplifico el manejo de errores, false si hubo error. */
50 bool Variable_check_min_max(Variable* var);
51
52 size_t Variable_print(Variable* var, FILE* fp);
53
54 #endif /* VARIABLE_H */