Lines Matching defs:obstack

0 /* obstack.h - object stack macros
43 them before using any obstack macros.
45 Each independent stack is represented by a `struct obstack'.
46 Each of the obstack macros expects a pointer to such a structure
63 With obstacks, you can work differently. Use one obstack for all symbol
64 names. As you read a symbol, grow the name in the obstack gradually.
99 Exactly one object is growing in an obstack at any one time.
100 You can run one obstack per control block.
102 Because of the way we do it, you can `unwind' an obstack
165 struct obstack /* control current object in current chunk */
190 /* Declare the external functions we use; they are in obstack.c. */
192 extern void _obstack_newchunk (struct obstack *, int);
193 extern void _obstack_free (struct obstack *, void *);
194 extern int _obstack_begin (struct obstack *, int, int,
196 extern int _obstack_begin_1 (struct obstack *, int, int,
199 extern int _obstack_memory_used (struct obstack *);
205 void obstack_init (struct obstack *obstack);
207 void * obstack_alloc (struct obstack *obstack, int size);
209 void * obstack_copy (struct obstack *obstack, void *address, int size);
210 void * obstack_copy0 (struct obstack *obstack, void *address, int size);
212 void obstack_free (struct obstack *obstack, void *block);
214 void obstack_blank (struct obstack *obstack, int size);
216 void obstack_grow (struct obstack *obstack, void *data, int size);
217 void obstack_grow0 (struct obstack *obstack, void *data, int size);
219 void obstack_1grow (struct obstack *obstack, int data_char);
220 void obstack_ptr_grow (struct obstack *obstack, void *data);
221 void obstack_int_grow (struct obstack *obstack, int data);
223 void * obstack_finish (struct obstack *obstack);
225 int obstack_object_size (struct obstack *obstack);
227 int obstack_room (struct obstack *obstack);
228 void obstack_make_room (struct obstack *obstack, int size);
229 void obstack_1grow_fast (struct obstack *obstack, int data_char);
230 void obstack_ptr_grow_fast (struct obstack *obstack, void *data);
231 void obstack_int_grow_fast (struct obstack *obstack, int data);
232 void obstack_blank_fast (struct obstack *obstack, int size);
234 void * obstack_base (struct obstack *obstack);
235 void * obstack_next_free (struct obstack *obstack);
236 int obstack_alignment_mask (struct obstack *obstack);
237 int obstack_chunk_size (struct obstack *obstack);
238 int obstack_memory_used (struct obstack *obstack);
314 ({ struct obstack *__o = (OBSTACK); \
319 ({ struct obstack *__o = (OBSTACK); \
324 ({ struct obstack *__o = (OBSTACK); \
332 ({ struct obstack *__o = (OBSTACK); \
337 ({ struct obstack *__o = (OBSTACK); \
347 ({ struct obstack *__o = (OBSTACK); \
358 ({ struct obstack *__o = (OBSTACK); \
364 /* These assume that the obstack alignment is good enough for pointers or ints,
370 ({ struct obstack *__o = (OBSTACK); \
377 ({ struct obstack *__o = (OBSTACK); \
384 ({ struct obstack *__o1 = (OBSTACK); \
391 ({ struct obstack *__o1 = (OBSTACK); \
398 ({ struct obstack *__o = (OBSTACK); \
407 ({ struct obstack *__h = (OBSTACK); \
413 ({ struct obstack *__h = (OBSTACK); \
419 ({ struct obstack *__h = (OBSTACK); \
427 ({ struct obstack *__o1 = (OBSTACK); \
443 ({ struct obstack *__o = (OBSTACK); \
550 #endif /* obstack.h */