Lines Matching +defs:symbol +defs:name

22  * Except as contained in this notice, the name of the XFree86 Project shall
70 if (strcmp(THESTR(package->data.package.name), string) == 0)
82 LispFindPackage(LispObj *name)
86 if (PACKAGEP(name))
87 return (name);
89 if (SYMBOLP(name))
90 string = ATOMID(name)->value;
91 else if (STRINGP(name))
92 string = THESTR(name);
94 LispDestroy("FIND-PACKAGE: %s is not a string or symbol", STROBJ(name));
117 * way builtin functions are created, all function name arguments enter
127 /* condition 2: intern and extern symbols or symbol is extern */
142 LispFindPackageOrDie(LispBuiltin *builtin, LispObj *name)
146 package = LispFindPackage(name);
150 STRFUN(builtin), STROBJ(name));
155 /* package must be of type LispPackage_t, symbol type is checked
159 LispObj *package, LispObj *symbol, int export)
161 CHECK_SYMBOL(symbol);
164 symbol->data.atom->package == lisp__data.keyword)
165 LispDestroy("%s: symbol %s cannot be unexported",
166 STRFUN(builtin), STROBJ(symbol));
170 symbol->data.atom->ext = export ? 1 : 0;
176 string = ATOMID(symbol);
186 LispDestroy("%s: the symbol %s is not available in package %s",
187 STRFUN(builtin), STROBJ(symbol),
188 THESTR(package->data.package.name));
193 LispDoImport(LispBuiltin *builtin, LispObj *symbol)
195 CHECK_SYMBOL(symbol);
196 LispImportSymbol(symbol);
218 /* if all_symbols, a package name is not specified in the init form */
222 LispDestroy("%s: missing package name", STRFUN(builtin));
249 /* Traverse the symbol list, executing body */
303 LispObj *symbol;
320 /* Search symbol in specified package */
325 symbol = NULL;
328 symbol = NIL;
330 symbol = T;
331 if (symbol) {
333 return (symbol);
338 symbol = atom->object;
340 if (symbol == NULL || symbol->data.atom->package == NULL) {
343 /* symbol does not exist in the specified package, create a new
344 * internal symbol */
347 symbol = ATOM(ptr);
360 symbol = ATOM(ptr);
367 symbol->data.atom->unreadable = !LispCheckAtomString(ptr);
368 /* If symbol being create in the keyword package, make it external */
370 symbol->data.atom->ext = symbol->data.atom->constant = 1;
373 symbol = NIL;
376 if (symbol->data.atom->package == package)
377 RETURN(0) = symbol->data.atom->ext ? Kexternal : Kinternal;
382 return (symbol);
416 find-all-symbols string-or-symbol
439 LispDestroy("%s: %s is not a string or symbol",
451 /* Return only one pointer to a matching symbol */
473 find-symbol string &optional package
482 find-package name
485 LispObj *name;
487 name = ARGUMENT(0);
489 return (LispFindPackage(name));
574 in-package name
579 LispObj *name;
581 name = ARGUMENT(0);
583 package = LispFindPackageOrDie(builtin, name);
585 /* Update pointer to package symbol table */
617 make-package package-name &key nicknames use
636 /* Error checks done, package_name is either a symbol or string */
650 THESTR(package->data.package.name));
681 /* Update pointer to package symbol table */
692 /* Restore pointer to package symbol table */
715 package-name package
724 return (package->data.package.name);