Open SCAP Library
src
OVAL
probes
SEAP
_sexp-manip.h
1
/*
2
* Copyright 2009 Red Hat Inc., Durham, North Carolina.
3
* All Rights Reserved.
4
*
5
* This library is free software; you can redistribute it and/or
6
* modify it under the terms of the GNU Lesser General Public
7
* License as published by the Free Software Foundation; either
8
* version 2.1 of the License, or (at your option) any later version.
9
*
10
* This library is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
* Lesser General Public License for more details.
14
*
15
* You should have received a copy of the GNU Lesser General Public
16
* License along with this library; if not, write to the Free Software
17
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18
*
19
* Authors:
20
* "Daniel Kopecek" <dkopecek@redhat.com>
21
*/
22
23
#pragma once
24
#ifndef _SEXP_MANIP_H
25
#define _SEXP_MANIP_H
26
27
#include "
public/sexp-manip.h
"
28
#include "../../../common/util.h"
29
30
31
#define SEXP_LSTACK_INIT_SIZE 8
32
#define SEXP_LSTACK_GROWFAST_TRESH 64
33
#define SEXP_LSTACK_GROWSLOW_DIFF 8
34
35
typedef
struct
{
36
SEXP_t
*p_list;
37
size_t
l_size;
38
size_t
l_real;
39
SEXP_t
**l_sref;
/* stack of soft refs to lists */
40
}
SEXP_lstack_t
;
41
42
SEXP_lstack_t
*SEXP_lstack_new (
void
);
43
void
SEXP_lstack_init (
SEXP_lstack_t
*stack);
44
void
SEXP_lstack_free (
SEXP_lstack_t
*stack);
45
void
SEXP_lstack_destroy (
SEXP_lstack_t
*stack);
46
47
SEXP_t
*SEXP_lstack_push (
SEXP_lstack_t
*stack,
SEXP_t
*ref);
48
SEXP_t
*SEXP_lstack_pop (
SEXP_lstack_t
*stack);
49
SEXP_t
*SEXP_lstack_top (
const
SEXP_lstack_t
*stack);
50
SEXP_t
*SEXP_lstack_list (
SEXP_lstack_t
*stack);
51
size_t
SEXP_lstack_depth (
SEXP_lstack_t
*stack);
52
53
54
#endif
/* _SEXP_MANIP_H */
sexp-manip.h
S-expression object manipulation functions - public header.
SEXP_lstack_t
Definition:
_sexp-manip.h:35
SEXP
Definition:
sexp-types.h:82
Generated by
1.8.17