Lines Matching refs:dictionary

73  * machines share a common dictionary (a sort or open symbol table that
88 * - Thread-safe, re-entrant: The shared system dictionary
97 * ROM implementation because it builds its system dictionary in
266 * VM private dictionary, but I've chosen the lower overhead
276 * and a private dictionary for local variable compilation.
301 * Enables dictionary mutual exclusion wia the
307 * on my part) - that is, threads that modify the dictionary
438 * FICL_ROBUST enables bounds checking of stacks and the dictionary.
439 * This will detect stack over and underflows and dictionary overflows.
461 * for the system dictionary by default. The value
470 * to allot for the environment-query dictionary.
478 * the dictionary search order. See Forth DPANS sec 16.3.3
497 * This only affects the size of the locals dictionary,
759 * the dictionary pointer address must be aligned. This value
1138 ficlVmDictionaryAllot(ficlVm *vm, ficlDictionary *dictionary, int n);
1140 ficlVmDictionaryAllotCells(ficlVm *vm, ficlDictionary *dictionary, int cells);
1167 ficlVmDictionaryCheck(ficlVm *vm, ficlDictionary *dictionary, int n);
1169 ficlVmDictionarySimpleCheck(ficlVm *vm, ficlDictionary *dictionary, int n);
1170 #define FICL_VM_DICTIONARY_CHECK(vm, dictionary, n) \
1171 ficlVmDictionaryCheck(vm, dictionary, n)
1172 #define FICL_VM_DICTIONARY_SIMPLE_CHECK(vm, dictionary, n) \
1173 ficlVmDictionarySimpleCheck(vm, dictionary, n)
1175 #define FICL_VM_DICTIONARY_CHECK(vm, dictionary, n)
1176 #define FICL_VM_DICTIONARY_SIMPLE_CHECK(vm, dictionary, n)
1183 * a word in the dictionary. It always gets passed a pointer to the
1195 * words in a linked list called the dictionary.
1198 * the dictionary ahead of the word struct, rather than using
1203 struct ficlWord *link; /* Previous word in the dictionary */
1236 * The word is hidden from dictionary lookups
1338 * here -- points to the next free byte in the dictionary. This
1345 * uses this pointer to restore the previous state of the dictionary.
1347 * dictionary search algo examines only completed definitions, so a
1363 * size -- number of cells in the dictionary (total)
1375 unsigned size; /* Number of cells in dictionary (total) */
1377 ficlCell base[1]; /* Base of dictionary memory */
1381 ficlDictionaryAbortDefinition(ficlDictionary *dictionary);
1382 FICL_PLATFORM_EXTERN void ficlDictionaryAlign(ficlDictionary *dictionary);
1384 ficlDictionaryAllot(ficlDictionary *dictionary, int n);
1386 ficlDictionaryAllotCells(ficlDictionary *dictionary, int nCells);
1388 ficlDictionaryAppendCell(ficlDictionary *dictionary, ficlCell c);
1390 ficlDictionaryAppendCharacter(ficlDictionary *dictionary, char c);
1392 ficlDictionaryAppendUnsigned(ficlDictionary *dictionary, ficlUnsigned u);
1394 ficlDictionaryAppendData(ficlDictionary *dictionary, void *data,
1397 ficlDictionaryAppendString(ficlDictionary *dictionary, ficlString s);
1399 ficlDictionaryAppendWord(ficlDictionary *dictionary, ficlString name,
1402 ficlDictionaryAppendPrimitive(ficlDictionary *dictionary, char *name,
1405 ficlDictionaryAppendInstruction(ficlDictionary *dictionary, char *name,
1409 ficlDictionaryAppendConstantInstruction(ficlDictionary *dictionary,
1412 ficlDictionaryAppend2ConstantInstruction(ficlDictionary *dictionary,
1416 ficlDictionaryAppendConstant(ficlDictionary *dictionary, char *name,
1419 ficlDictionaryAppend2Constant(ficlDictionary *dictionary, char *name,
1421 #define ficlDictionaryAppendConstantPointer(dictionary, name, pointer) \
1422 (ficlDictionaryAppendConstant(dictionary, name, (ficlInteger)pointer))
1425 ficlDictionaryAppendFConstant(ficlDictionary *dictionary, char *name,
1428 ficlDictionaryAppendF2Constant(ficlDictionary *dictionary, char *name,
1434 ficlDictionarySetConstantInstruction(ficlDictionary *dictionary,
1437 ficlDictionarySet2ConstantInstruction(ficlDictionary *dictionary,
1441 ficlDictionarySetConstant(ficlDictionary *dictionary, char *name,
1443 #define ficlDictionarySetConstantPointer(dictionary, name, pointer) \
1444 (ficlDictionarySetConstant(dictionary, name, (ficlInteger)pointer))
1447 ficlDictionarySet2Constant(ficlDictionary *dictionary, char *name,
1450 ficlDictionarySetConstantString(ficlDictionary *dictionary, char *name,
1453 ficlDictionarySetPrimitive(ficlDictionary *dictionary, char *name,
1456 ficlDictionarySetInstruction(ficlDictionary *dictionary, char *name,
1460 ficlDictionarySetFConstant(ficlDictionary *dictionary, char *name,
1463 ficlDictionarySetF2Constant(ficlDictionary *dictionary, char *name,
1468 ficlDictionaryCellsAvailable(ficlDictionary *dictionary);
1469 FICL_PLATFORM_EXTERN int ficlDictionaryCellsUsed(ficlDictionary *dictionary);
1475 ficlDictionaryCreateWordlist(ficlDictionary *dictionary, int nBuckets);
1476 FICL_PLATFORM_EXTERN void ficlDictionaryDestroy(ficlDictionary *dictionary);
1478 ficlDictionaryEmpty(ficlDictionary *dictionary, unsigned nHash);
1480 ficlDictionaryIncludes(ficlDictionary *dictionary, void *p);
1482 ficlDictionaryLookup(ficlDictionary *dictionary, ficlString name);
1484 ficlDictionaryResetSearchOrder(ficlDictionary *dictionary);
1486 ficlDictionarySetFlags(ficlDictionary *dictionary, ficlUnsigned8 set);
1488 ficlDictionaryClearFlags(ficlDictionary *dictionary, ficlUnsigned8 clear);
1490 ficlDictionarySetImmediate(ficlDictionary *dictionary);
1492 ficlDictionaryUnsmudge(ficlDictionary *dictionary);
1493 FICL_PLATFORM_EXTERN ficlCell *ficlDictionaryWhere(ficlDictionary *dictionary);
1496 ficlDictionaryIsAWord(ficlDictionary *dictionary, ficlWord *word);
1498 ficlDictionarySee(ficlDictionary *dictionary, ficlWord *word,
1501 ficlDictionaryFindEnclosingWord(ficlDictionary *dictionary, ficlCell *cell);
1504 * Stub function for dictionary access control - does nothing
1505 * by default, user can redefine to guarantee exclusive dictionary
1506 * access to a single thread for updates. All dictionary update code
1508 * ficlLockDictionary(dictionary, FICL_TRUE); // any non-zero value will do
1509 * <code that updates dictionary>
1510 * ficlLockDictionary(dictionary, FICL_FALSE);
1520 ficlDictionaryLock(ficlDictionary *dictionary, short lockIncrement);
1522 #define ficlDictionaryLock(dictionary, lock) (void)0 /* ignore */
1530 * input stream: it first attempts to match it with a word in the dictionary,
1551 * that the breakpoint overwrote. This is restored to the dictionary when the
1583 int environmentSize; /* Size of Environment dictionary, in cells */
1595 ficlDictionary *dictionary;
1622 * Binds a global dictionary to the interpreter system and initializes
1623 * the dictionary to contain the ANSI CORE wordset.
1628 * Then write the "precompiled" portion of the dictionary in.
1629 * The dictionary needs to be at least large enough to hold the
1631 * out how much of the dictionary is used at any time.
1637 * Deletes the system dictionary and all virtual machines that
1639 * reclaim all memory used by the dictionary and VMs.
1663 * dictionary with the given name, or NULL if no match.
1670 * Utility function - returns the address of the system dictionary.
1681 * Builds the ANS CORE wordset into the dictionary - called by
1682 * ficlInitSystem - no need to waste dictionary space by doing it again.
1721 * the dictionary. Precompiled parse steps can use (PARSE-STEP) as their