Graphviz
2.41.20171026.1811
Main Page
Data Structures
Files
File List
Globals
lib
circogen
stack.h
Go to the documentation of this file.
1
/* $Id$ $Revision$ */
2
/* vim:set shiftwidth=4 ts=8: */
3
4
/*************************************************************************
5
* Copyright (c) 2011 AT&T Intellectual Property
6
* All rights reserved. This program and the accompanying materials
7
* are made available under the terms of the Eclipse Public License v1.0
8
* which accompanies this distribution, and is available at
9
* http://www.eclipse.org/legal/epl-v10.html
10
*
11
* Contributors: See CVS logs. Details at http://www.graphviz.org/
12
*************************************************************************/
13
14
#ifdef __cplusplus
15
extern
"C"
{
16
#endif
17
18
#ifndef STACK_H
19
#define STACK_H
20
21
#include <
render.h
>
22
23
typedef
struct
{
24
Agnode_t
*
top
;
25
int
sz
;
26
}
nstack_t
;
27
28
extern
nstack_t
*
mkStack
(
void
);
29
extern
void
stackPush
(
nstack_t
*
s
,
Agnode_t
* n);
30
extern
Agnode_t
*
stackPop
(
nstack_t
*
s
);
31
extern
int
stackSize
(
nstack_t
*
s
);
32
extern
int
stackCheck
(
nstack_t
*
s
,
Agnode_t
* n);
33
extern
void
freeStack
(
nstack_t
*
s
);
34
35
#define top(sp) ((sp)->top)
36
37
#ifdef DEBUG
38
extern
void
printStack(
nstack_t
*);
39
#endif
40
41
#endif
42
43
#ifdef __cplusplus
44
}
45
#endif
nstack_t
Definition:
stack.h:23
stackPush
void stackPush(nstack_t *s, Agnode_t *n)
Definition:
stack.c:35
freeStack
void freeStack(nstack_t *s)
Definition:
stack.c:30
stackPop
Agnode_t * stackPop(nstack_t *s)
Definition:
stack.c:43
Agnode_s
Definition:
cgraph.h:133
s
Definition:
grammar.c:79
stackCheck
int stackCheck(nstack_t *s, Agnode_t *n)
Definition:
stack.c:67
stackSize
int stackSize(nstack_t *s)
Definition:
stack.c:59
mkStack
nstack_t * mkStack()
Definition:
stack.c:19
render.h
nstack_t::top
Agnode_t * top
Definition:
stack.h:24
nstack_t::sz
int sz
Definition:
stack.h:25
Generated by
1.8.5