FICL_WORD
FICL_WORD *dictAppendWord(FICL_DICT *pDict,
FICL_WORD *dictAppendWord2(FICL_DICT *pDict,
FICL_WORD *pFW;
pFW = (FICL_WORD *)pDict->here;
+ (nHash - 1) * sizeof (FICL_WORD *);
+ (nBuckets-1) * sizeof (FICL_WORD *));
sizeof (FICL_HASH) + (nHash - 1) * sizeof (FICL_WORD *));
FICL_WORD **pHash;
FICL_WORD *pFW;
FICL_WORD *dictLookup(FICL_DICT *pDict, STRINGINFO si)
FICL_WORD *pFW = NULL;
FICL_WORD *ficlLookupLoc(FICL_SYSTEM *pSys, STRINGINFO si)
FICL_WORD *pFW = NULL;
FICL_WORD *pFW = pDict->smudge;
FICL_WORD *pWord;
void hashInsertWord(FICL_HASH *pHash, FICL_WORD *pFW)
FICL_WORD **pList;
FICL_WORD *hashLookup(FICL_HASH *pHash, STRINGINFO si, UNS16 hashCode)
FICL_WORD *pFW;
FICL_WORD *pFW;
int ficlAddParseStep(FICL_SYSTEM *pSys, FICL_WORD *pFW)
FICL_WORD *pFW = dictAppendWord(dp, name, parseStepParen, FW_DEFAULT);
assert(dictCellsAvail(pSys->dp) > sizeof (FICL_WORD) / sizeof (CELL));
int ficlExecXT(FICL_VM *pVM, FICL_WORD *pWord)
FICL_WORD *oldRunningWord;
FICL_WORD *ficlLookup(FICL_SYSTEM *pSys, char *name)
FICL_WORD *pFW;
FICL_WORD *pFW;
FICL_WORD *ficlLookup(FICL_SYSTEM *pSys, char *name);
int isAFiclWord(FICL_DICT *pd, FICL_WORD *pFW);
WORDKIND ficlWordClassify(FICL_WORD *pFW);
typedef FICL_WORD ** IPTYPE; /* the VM's instruction pointer */
FICL_WORD *runningWord;/* address of currently running word (often just *(ip-1) ) */
( (sizeof (FICL_WORD) + nFICLNAME + sizeof (CELL)) \
int wordIsImmediate(FICL_WORD *pFW);
int wordIsCompileOnly(FICL_WORD *pFW);
void vmExecute (FICL_VM *pVM, FICL_WORD *pWord);
FICL_WORD *tempFW = *(pVM)->ip++; \
FICL_WORD *table[1];
void hashInsertWord(FICL_HASH *pHash, FICL_WORD *pFW);
FICL_WORD *hashLookup (FICL_HASH *pHash, STRINGINFO si, UNS16 hashCode);
FICL_WORD *smudge;
FICL_WORD *dictAppendWord (FICL_DICT *pDict,
FICL_WORD *dictAppendWord2(FICL_DICT *pDict,
FICL_WORD *dictLookup (FICL_DICT *pDict, STRINGINFO si);
FICL_WORD *ficlLookupLoc (FICL_SYSTEM *pSys, STRINGINFO si);
int ficlAddParseStep(FICL_SYSTEM *pSys, FICL_WORD *pFW); /* ficl.c */
FICL_WORD *origXT;
FICL_WORD *pInterp[3];
FICL_WORD *parseList[FICL_MAX_PARSE_STEPS];
FICL_WORD *pBranchParen;
FICL_WORD *pDoParen;
FICL_WORD *pDoesParen;
FICL_WORD *pExitInner;
FICL_WORD *pExitParen;
FICL_WORD *pBranch0;
FICL_WORD *pInterpret;
FICL_WORD *pLitParen;
FICL_WORD *pTwoLitParen;
FICL_WORD *pLoopParen;
FICL_WORD *pPLoopParen;
FICL_WORD *pQDoParen;
FICL_WORD *pSemiParen;
FICL_WORD *pOfParen;
FICL_WORD *pStore;
FICL_WORD *pDrop;
FICL_WORD *pCStringLit;
FICL_WORD *pStringLit;
FICL_WORD *pGetLocalParen;
FICL_WORD *pGet2LocalParen;
FICL_WORD *pGetLocal0;
FICL_WORD *pGetLocal1;
FICL_WORD *pToLocalParen;
FICL_WORD *pTo2LocalParen;
FICL_WORD *pToLocal0;
FICL_WORD *pToLocal1;
FICL_WORD *pLinkParen;
FICL_WORD *pUnLinkParen;
int ficlExecXT(FICL_VM *pVM, FICL_WORD *pWord);
FICL_WORD *pFW = pVM->runningWord;
FICL_WORD *pfLitParen = ficlLookup(pVM->pSys, "(fliteral)");
FICL_WORD *pFW;
FICL_WORD *pFW = ficlLookup(pVM->pSys, list_name);
FICL_WORD *pFW;
FICL_WORD *pFW;
FICL_WORD *pFW;
int isAFiclWord(FICL_DICT *pd, FICL_WORD *pFW)
static int isPrimitive(FICL_WORD *pFW)
static FICL_WORD *findEnclosingWord(FICL_VM *pVM, CELL *cp)
FICL_WORD *pFW;
pFW = (FICL_WORD *)(cp + 1 - (sizeof (FICL_WORD) / sizeof (CELL)));
FICL_WORD *pSemiParen = ficlLookup(pVM->pSys, "(;)");
FICL_WORD *pFW = (FICL_WORD *)(pc->p);
FICL_WORD *pLit = (FICL_WORD *)c.p;
FICL_WORD *pFW;
pFW = (FICL_WORD *)stackPopPtr(pVM->pStack);
FICL_WORD *xt = stackPopPtr(pVM->pStack);
FICL_WORD *pFW;
FICL_WORD *pStep = ficlLookup(pVM->pSys, "step-break");
FICL_WORD *pFW;
FICL_WORD *pOnStep;
FICL_WORD *xt;
FICL_WORD *oldRun = pVM->runningWord;
FICL_WORD *pFW = findEnclosingWord(pVM, c.p);
where = ((FICL_WORD *)stackPopPtr(pVM->pStack))->name;
FICL_WORD *wp;
FICL_WORD *wp;
FICL_WORD *pStep = ficlLookup(pVM->pSys, "step-break");
void vmExecute(FICL_VM *pVM, FICL_WORD *pWord)
int wordIsImmediate(FICL_WORD *pFW)
int wordIsCompileOnly(FICL_WORD *pFW)
FICL_WORD *pFW = pSys->parseList[i];
FICL_WORD *tempFW;
FICL_WORD *pFW = pVM->runningWord;
FICL_WORD *pStep;
pStep = (FICL_WORD *)(stackPop(pVM->pStack).p);
FICL_WORD *fw;
FICL_WORD *pFW = NULL;
FICL_WORD *pFW;
FICL_WORD *pComma = ficlLookup(pVM->pSys, ",");
FICL_WORD *pFW;
FICL_WORD *pFW = (FICL_WORD *)stackPopPtr(pVM->pStack);
FICL_WORD *pType = ficlLookup(pVM->pSys, "type");
FICL_WORD *pFW;
ptr = (char *)POPPTR() - sizeof (FICL_WORD);
FICL_WORD *pFW;
FICL_WORD *wp = pDict->smudge;
FICL_WORD *pFW;
FICL_WORD *pFW;
FICL_WORD *pFW;
FICL_WORD *pFW;
FICL_WORD *pFW;
WORDKIND ficlWordClassify(FICL_WORD *pFW)
pSys->pInterp[2] = (FICL_WORD *)(void *)(-2);
FICL_WORD *pFW = pVM->runningWord;
FICL_WORD *pFW = pVM->runningWord;