1/*  bag.h -- ARMulator support code:  ARM6 Instruction Emulator.
2    Copyright (C) 1994 Advanced RISC Machines Ltd.
3
4    This program is free software; you can redistribute it and/or modify
5    it under the terms of the GNU General Public License as published by
6    the Free Software Foundation; either version 2 of the License, or
7    (at your option) any later version.
8
9    This program is distributed in the hope that it will be useful,
10    but WITHOUT ANY WARRANTY; without even the implied warranty of
11    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12    GNU General Public License for more details.
13
14    You should have received a copy of the GNU General Public License
15    along with this program; if not, write to the Free Software
16    Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */
17
18/********************************************************************/
19/* bag.h:                                                           */
20/* Header file for bag.c                                            */
21/* Offers a data structure for storing and getting pairs of number. */
22/* The numbers are stored together, put one can be looked up by     */
23/* quoting the other.  If a new pair is entered and one of the      */
24/* numbers is a repeat of a previous pair, then the previos pair    */
25/* is deleted.                                                      */
26/********************************************************************/
27
28typedef enum
29{
30  NO_ERROR,
31  DELETED_OLD_PAIR,
32  NO_SUCH_PAIR,
33}
34Bag_error;
35
36void BAG_putpair (long first, long second);
37
38void BAG_newbag (void);
39Bag_error BAG_killpair_byfirst (long first);
40Bag_error BAG_killpair_bysecond (long second);
41
42Bag_error BAG_getfirst (long *first, long second);
43Bag_error BAG_getsecond (long first, long *second);
44