📄 mal_box.h
字号:
#ifndef _MAL_BOX_H#define _MAL_BOX_H#include "mal_stack.h"#include "mal_instruction.h"/*#define DEBUG_MAL_BOX */typedef struct BOX { MT_Lock lock; /* provide exclusive access */ str name; MalBlkPtr sym; MalStkPtr val; int dirty; /* don't save if it hasn't been changed */} *Box, BoxRecord;mal_export Box newBox(str name);mal_export Box findBox(str name);mal_export Box openBox(str name);mal_export int closeBox(str name, int flag);mal_export void destroyBox(str name);mal_export str boxFileName(Box box, str extension);mal_export int saveBox(Box box, int flag);mal_export void loadBox(str nme);mal_export int releaseAllBox(Box box);mal_export int depositBox(Box box, str name, ValPtr val);mal_export void insertToBox(Box box, str name, str val);mal_export int takeBox(Box box, str name, ValPtr val, int tpe);mal_export int bindBAT(Box box, str name, str location);mal_export int releaseBox(Box box, str name);mal_export int discardBox(Box box, str name);mal_export str getBoxName(Box box, lng i);mal_export str getBoxNames(int *bid);mal_export str toString(Box box, lng i);mal_export int nextBoxElement(Box box, lng *cursor, ValPtr v);mal_export stream *prepareSaveBox(Box box, str *boxfile, str *boxfilebak);mal_export void printSomeBox(stream *fd, int k);mal_export void printBox(stream *fd, Box obj);mal_export void freeBoxes(void);#endif /* _MAL_BOX_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -