/* %Z%%M% %I% %E% */ /* * Copyright (c) 1990, 1991, 1995 by Wayne C. Gramlich. * All rights reserved. * * Permission to use, copy, modify, distribute, and sell this software * for any purpose is hereby granted without fee provided that the above * copyright notice and this permission are retained. The author makes * no representations about the suitability of this software for any purpose. * It is provided "as is" without express or implied warranty. */ /* This file contains the typedefs for statements: */ #ifndef STATEMENT_TYPES_H #define STATEMENT_TYPES_H typedef struct Breakpoint_struct *Breakpoint; typedef struct Statement_struct *Statement; typedef struct Statement_case_struct *Statement_case; typedef struct Statement_cond_struct *Statement_cond; typedef struct Statement_extract_struct *Statement_extract; typedef struct Statement_initialize_struct *Statement_initialize; typedef struct Statement_loop_struct *Statement_loop; typedef struct Statement_label_struct *Statement_label; typedef struct Statement_tag_struct *Statement_tag; typedef enum Statement_kind_enum Statement_kind; typedef struct Statement_switch_struct *Statement_switch; typedef union Statement_value_union Statement_value; /* Defining the enum here shuts alint up! */ enum Statement_kind_enum { Statement_kind_assert, /* Assert statement */ Statement_kind_break, /* break statement */ Statement_kind_continue, /* continue statement */ Statement_kind_eval, /* Assignment statement */ Statement_kind_extract, /* Extract statement */ Statement_kind_if, /* if statement */ Statement_kind_initialize, /* initialize statement */ Statement_kind_loop, /* loop statment */ Statement_kind_none, /* Comment */ Statement_kind_return, /* return statement */ Statement_kind_signal, /* signal statement */ Statement_kind_switch, /* switch statement */ Statement_kind_until, /* until statement */ Statement_kind_while, /* while statement */ Statement_kind_yield, /* yield statement */ Statement_kind_size /* Number of statement kinds */ }; #endif /* STATEMENT_TYPES_H */