Function: internal--obarray-buckets
internal--obarray-buckets is a function defined in lread.c.
Signature
(internal--obarray-buckets OBARRAY)
Documentation
Symbols in each bucket of OBARRAY. Internal use only.
Source Code
// Defined in /usr/src/emacs/src/lread.c
{
obarray = check_obarray (obarray);
ptrdiff_t size = obarray_size (XOBARRAY (obarray));
Lisp_Object ret = Qnil;
for (ptrdiff_t i = 0; i < size; i++)
{
Lisp_Object bucket = Qnil;
Lisp_Object sym = XOBARRAY (obarray)->buckets[i];
if (BARE_SYMBOL_P (sym))
while (1)
{
bucket = Fcons (sym, bucket);
struct Lisp_Symbol *s = XBARE_SYMBOL (sym)->u.s.next;
if (!s)
break;
sym = make_lisp_symbol (s);
}
ret = Fcons (Fnreverse (bucket), ret);
}
return Fnreverse (ret);
}