Files
sics/ruli.h
2000-02-07 10:38:55 +00:00

40 lines
1.7 KiB
C

/*------------------------------------------------------------------------------
R \"U N L I S T
LNS has this special scheme of collecting commands in R\"unbuffers
(see buffer.h) and execute them from a stack. The R\"unbuffers are
implemented in buffer.*. This implements the stack.
BEWARE: The R\"unList code does not delete R\"unbuffers!
Mark Koennecke, January 1996
copyright: see implementation file
------------------------------------------------------------------------------*/
#ifndef RUENSTACK
#define RUENSTACK
typedef struct {
pObjectDescriptor pDes;
int iList;
} RuenStack, *pRuenStack;
/*----------------------------- live & death --------------------------------*/
pRuenStack CreateRuenStack(void);
void DeleteRuenStack(void *self);
/*----------------------------- what can be done with it --------------------*/
int RuenStackAdd(pRuenStack self,pRuenBuffer pVictim);
int RuenStackUnlink(pRuenStack self, int iLine);
int RuenStackInsert(pRuenStack self, int iLine, pRuenBuffer pVictim);
int RuenStackList(pRuenStack self, SConnection *pCon);
int RuenStackRun(pRuenStack self,SConnection *pCon, SicsInterp *pSics);
int RuenStackBatch(pRuenStack self,SConnection *pCon, SicsInterp *pSics);
/*------------------------- the command -------------------------------------*/
int RuenStackAction(SConnection *pCon, SicsInterp *pSics, void *pData,
int argc, char *argv[]);
#endif