qse/ase/awk/run.h

72 lines
1.2 KiB
C
Raw Normal View History

2006-03-07 16:02:58 +00:00
/*
2006-04-12 03:54:12 +00:00
* $Id: run.h,v 1.8 2006-04-12 03:54:12 bacon Exp $
2006-03-07 16:02:58 +00:00
*/
#ifndef _XP_AWK_RUN_H_
#define _XP_AWK_RUN_H_
#ifndef _XP_AWK_AWK_H_
#error Never include this file directly. Include <xp/awk/awk.h> instead
#endif
typedef struct xp_awk_frm_t xp_awk_frm_t;
struct xp_awk_frm_t
{
xp_size_t nparams;
xp_size_t nlocals;
xp_awk_val_t* stack;
xp_awk_frm_t* prev;
};
enum
{
2006-03-30 16:31:50 +00:00
/* if you change this, you have to change
2006-04-11 15:44:30 +00:00
* __binop_str in tree.c and __binop_func in run.c accordingly. */
2006-03-29 16:39:04 +00:00
XP_AWK_BINOP_LOR,
XP_AWK_BINOP_LAND,
XP_AWK_BINOP_BOR,
2006-03-30 16:24:10 +00:00
XP_AWK_BINOP_BXOR,
2006-03-29 16:39:04 +00:00
XP_AWK_BINOP_BAND,
2006-03-31 12:04:14 +00:00
2006-03-07 16:02:58 +00:00
XP_AWK_BINOP_EQ,
XP_AWK_BINOP_NE,
XP_AWK_BINOP_GT,
XP_AWK_BINOP_GE,
XP_AWK_BINOP_LT,
2006-03-31 12:04:14 +00:00
XP_AWK_BINOP_LE,
XP_AWK_BINOP_LSHIFT,
XP_AWK_BINOP_RSHIFT,
XP_AWK_BINOP_PLUS,
XP_AWK_BINOP_MINUS,
XP_AWK_BINOP_MUL,
XP_AWK_BINOP_DIV,
2006-04-11 15:44:30 +00:00
XP_AWK_BINOP_MOD,
2006-04-12 03:54:12 +00:00
XP_AWK_BINOP_EXP,
XP_AWK_BINOP_MA,
XP_AWK_BINOP_NM
2006-03-31 12:04:14 +00:00
};
enum
{
2006-04-02 12:45:04 +00:00
/* if you change this, you have to change
* __unrop_str in tree.c accordingly. */
XP_AWK_UNROP_PLUS,
XP_AWK_UNROP_MINUS,
XP_AWK_UNROP_NOT,
XP_AWK_UNROP_BNOT
};
enum
{
/* if you change this, you have to change
* __incop_str in tree.c accordingly. */
XP_AWK_INCOP_PLUS,
XP_AWK_INCOP_MINUS
2006-03-07 16:02:58 +00:00
};
#endif