Pajdeg  0.2.2
Pajdeg
Macros | Functions | Variables
pd_stack.h File Reference
#include <sys/types.h>
#include "PDDefines.h"

Go to the source code of this file.

Macros

#define PDDeallocateViaStackDealloc(ob)   pd_stack_dealloc(ob)
 

Functions

void pd_stack_set_global_preserve_flag (PDBool preserve)
 
Pushing onto stack
void pd_stack_push_key (pd_stack *stack, char *key)
 
void pd_stack_push_identifier (pd_stack *stack, PDID identifier)
 
void pd_stack_push_freeable (pd_stack *stack, void *info)
 
void pd_stack_push_stack (pd_stack *stack, pd_stack pstack)
 
void pd_stack_push_object (pd_stack *stack, void *ob)
 
void pd_stack_unshift_stack (pd_stack *stack, pd_stack sstack)
 
pd_stack pd_stack_copy (pd_stack stack)
 
Popping from stack
void pd_stack_destroy (pd_stack *stack)
 
char * pd_stack_pop_key (pd_stack *stack)
 
PDID pd_stack_pop_identifier (pd_stack *stack)
 
pd_stack pd_stack_pop_stack (pd_stack *stack)
 
void * pd_stack_pop_object (pd_stack *stack)
 
void * pd_stack_pop_freeable (pd_stack *stack)
 
PDSize pd_stack_pop_size (pd_stack *stack)
 
PDInteger pd_stack_pop_int (pd_stack *stack)
 
void pd_stack_assert_expected_key (pd_stack *stack, const char *key)
 
void pd_stack_assert_expected_int (pd_stack *stack, PDInteger i)
 
PDInteger pd_stack_peek_int (pd_stack stack)
 
Debugging
void pd_stack_print (pd_stack stack)
 
void pd_stack_show (pd_stack stack)
 

Variables

PDDeallocator pd_stack_dealloc
 

Convenience features

#define pd_stack_for_each(stack, iter)   for (iter = stack; iter; iter = iter->prev)
 
PDInteger pd_stack_get_count (pd_stack stack)
 
void pd_stack_pop_into (pd_stack *dest, pd_stack *source)
 
pd_stack pd_stack_get_dict_key (pd_stack dictStack, const char *key, PDBool remove)
 
PDBool pd_stack_get_next_dict_key (pd_stack *iterStack, char **key, char **value)
 
pd_stack pd_stack_get_arr (pd_stack arrStack)
 
void pd_stack_replace_info_object (pd_stack stack, char type, void *info)
 
pd_stack pd_stack_create_from_definition (const void **defs)
 

Detailed Description

Stack header file.

Macro Definition Documentation

#define PDDeallocateViaStackDealloc (   ob)    pd_stack_dealloc(ob)

Deallocate something using stack deallocator.

Variable Documentation

PDDeallocator pd_stack_dealloc

The global deallocator for stacks. Defaults to the built-in free() function, but is overridden when global preserve flag is set.

See also
pd_stack_set_global_preserve_flag