de-lint. disable c++ parentheses warnings. fix casts in AROSPDFApp.cc
[AROS-Contrib.git] / rexx / src / stack.c
blob83b227642d3e1321d78a225373f93cd4ce48bc79
1 /*
2 * $Header$
3 * $Log$
4 * Revision 1.1 2001/04/04 05:43:39 wang
5 * First commit: compiles on Linux, Amiga, Windows, Windows CE, generic gcc
7 * Revision 1.2 1999/11/26 13:13:47 bnv
8 * Changed: To use the new macros.
10 * Revision 1.1 1998/07/02 17:34:50 bnv
11 * Initial revision
15 #define __STACK_C__
17 #include <bmem.h>
19 #include <lerror.h>
20 #include <lstring.h>
21 #include <stack.h>
23 #include <rexx.h>
25 /* ----------------- CreateStack ----------------------- */
26 void
27 CreateStack( void )
29 DQueue *stck;
31 stck = (DQueue*) MALLOC(sizeof(DQueue),"Stack");
32 DQINIT(*stck);
33 DQPUSH(&StackList,stck);
34 } /* CreateStack */
36 /* ----------------- DeleteStack ----------------------- */
37 void
38 DeleteStack( void )
40 DQueue *stck;
41 stck = DQPop(&StackList);
42 DQFlush(stck,_Lfree);
43 FREE(stck);
44 } /* DeleteStack */
46 /* ----------------- Queue2Stack ----------------------- */
47 void
48 Queue2Stack( PLstr str )
50 DQueue *stck;
51 stck = DQPEEK(&StackList);
52 DQAdd2Head(stck,str);
53 } /* Queue2Stack */
55 /* ----------------- Push2Stack ----------------------- */
56 void
57 Push2Stack( PLstr str )
59 DQueue *stck;
60 stck = DQPEEK(&StackList);
61 DQAdd2Tail(stck,str);
62 } /* Push2Stack */
64 /* ----------------- PullFromStack ----------------------- */
65 PLstr
66 PullFromStack( )
68 DQueue *stck;
69 stck = DQPEEK(&StackList);
70 return (PLstr)DQPop(stck);
71 } /* PullFromStack */
73 /* ----------------- StackQueued ----------------------- */
74 long
75 StackQueued( void )
77 DQueue *stck;
78 stck = DQPEEK(&StackList);
79 return stck->items;
80 } /* StackQueued*/