comparison src/expr.c @ 14:b28d7cb60779

checkpoint
author lost
date Thu, 23 Oct 2008 02:44:07 +0000
parents 05d4115b4860
children 1f598d89b9b0
comparison
equal deleted inserted replaced
13:05d4115b4860 14:b28d7cb60779
21 /* 21 /*
22 This file contains implementations associated with the expression evaluator 22 This file contains implementations associated with the expression evaluator
23 used by LWASM. 23 used by LWASM.
24 24
25 */ 25 */
26
27 #include <malloc.h>
28
29 #define __expr_c_seen__
30 #include "expr.h"
31
32 LWVAL *lwval_construct_int(int value)
33 {
34 LWVAL *v;
35
36 v = malloc(sizeof(LWVAL));
37 if (!v)
38 return NULL;
39
40 v -> lwval_type = LWVAL_TYPE_INT;
41 v -> dt.lwval_int = value;
42
43 return v;
44 }
45
46 void lwval_destroy(LWVAL *value)
47 {
48 if (value)
49 free(value);
50 }
51
52 // v1 + v2 -> v3, return v3
53 LWVAL *lwval_add(LWVAL *v1, LWVAL *v2, LWVAL *v3)
54 {
55 }
56
57 // v1 - v2 -> v3, return v3
58 LWVAL *lwval_sub(LWVAL *v1, LWVAL *v2, LWVAL *v3)
59 {
60 }
61
62 // v1 * v2 -> v3, return v3
63 LWVAL *lwval_mul(LWVAL *v1, LWVAL *v2, LWVAL *v3)
64 {
65 }
66
67 // v1 / v2 -> v3, return v3
68 LWVAL *lwval_div(LWVAL *v1, LWVAL *v2, LWVAL *v3)
69 {
70 }
71
72 // v1 % v2 -> v3, return v3
73 LWVAL *lwval_mod(LWVAL *v1, LWVAL *v2, LWVAL *v3)
74 {
75 }