00001 #pragma once
00002 #ifndef _SEXP_MANIP_H
00003 #define _SEXP_MANIP_H
00004
00005 #include "public/sexp-manip.h"
00006 #include "../../../common/util.h"
00007
00008 OSCAP_HIDDEN_START;
00009
00010 #define SEXP_LSTACK_INIT_SIZE 32
00011 #define SEXP_LSTACK_GROWFAST_TRESH 512
00012 #define SEXP_LSTACK_GROWSLOW_DIFF 32
00013
00014 typedef struct {
00015 size_t l_size;
00016 size_t l_real;
00017 SEXP_t **l_sref;
00018 } SEXP_lstack_t;
00019
00020 SEXP_lstack_t *SEXP_lstack_new (void);
00021 SEXP_t *SEXP_lstack_push (SEXP_lstack_t *stack, const SEXP_t *ref);
00022 SEXP_t *SEXP_lstack_pop (SEXP_lstack_t *stack);
00023 SEXP_t *SEXP_lstack_top (const SEXP_lstack_t *stack);
00024
00025 struct SEXP_it {
00026 SEXP_t *s_ref;
00027
00028 };
00029
00030 OSCAP_HIDDEN_END;
00031
00032 #endif