Graphviz 12.0.1~dev.20240716.0800
Loading...
Searching...
No Matches
gprstate.h
Go to the documentation of this file.
1/*************************************************************************
2 * Copyright (c) 2011 AT&T Intellectual Property
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v1.0
5 * which accompanies this distribution, and is available at
6 * https://www.eclipse.org/legal/epl-v10.html
7 *
8 * Contributors: Details at https://graphviz.org
9 *************************************************************************/
10
11#pragma once
12
13#ifdef __cplusplus
14extern "C" {
15#endif
16
17#include <sfio/sfio.h>
18#include "cgraph.h"
19#include <ast/ast.h>
20#include <stdbool.h>
21#include <stddef.h>
22#include <stdio.h>
23#include <expr/expr.h>
24#include "gvpr.h"
25
32
56
57 typedef struct {
58 FILE *outFile;
59 int argc;
60 char **argv;
63 int flags;
64 } gpr_info;
65
66 extern Gpr_t *openGPRState(gpr_info*);
67 extern void addBindings(Gpr_t* state, gvprbinding*);
68 extern gvprbinding* findBinding(Gpr_t* state, char*);
69 extern void closeGPRState(Gpr_t* state);
70 extern void initGPRState(Gpr_t *);
71 extern bool validTVT(long long);
72
73#ifdef __cplusplus
74}
75#endif
abstract graph C library, Cgraph API
void(* Exerror_f)(Expr_t *, Exdisc_t *, int, const char *,...)
Definition expr.h:89
void(* Exexit_f)(Expr_t *, Exdisc_t *, int)
Definition expr.h:90
gvprbinding * findBinding(Gpr_t *state, char *)
Definition gprstate.c:67
Gpr_t * openGPRState(gpr_info *)
Definition gprstate.c:34
void initGPRState(Gpr_t *)
Definition gprstate.c:30
void addBindings(Gpr_t *state, gvprbinding *)
Definition gprstate.c:91
trav_type
Definition gprstate.h:26
@ TV_flat
Definition gprstate.h:26
@ TV_fwd
Definition gprstate.h:28
@ TV_rev
Definition gprstate.h:28
@ TV_postdfs
Definition gprstate.h:29
@ TV_dfs
Definition gprstate.h:28
@ TV_prepostfwd
Definition gprstate.h:30
@ TV_en
Definition gprstate.h:26
@ TV_prepostrev
Definition gprstate.h:30
@ TV_prepostdfs
Definition gprstate.h:30
@ TV_postfwd
Definition gprstate.h:29
@ TV_bfs
Definition gprstate.h:27
@ TV_ne
Definition gprstate.h:26
@ TV_postrev
Definition gprstate.h:29
void closeGPRState(Gpr_t *state)
Definition gprstate.c:119
bool validTVT(long long)
Definition gprstate.c:26
graph pattern scanning and processing language API, main function gvpr
static lexstate_t state
Definition htmllex.c:61
a generic header of Agraph_s, Agnode_s and Agedge_s
Definition cgraph.h:210
graph or subgraph
Definition cgraph.h:425
char ** argv
Definition gprstate.h:51
Agedge_t * tvedge
Definition gprstate.h:48
char * tgtname
Definition gprstate.h:42
Exexit_f exitf
Definition gprstate.h:41
Agobj_t * curobj
Definition gprstate.h:38
Agraph_t * target
Definition gprstate.h:36
Agraph_t * curgraph
Definition gprstate.h:34
int flags
Definition gprstate.h:52
FILE * outFile
Definition gprstate.h:44
Agraph_t * outgraph
Definition gprstate.h:37
size_t n_bindings
Definition gprstate.h:54
Exdisc_t * dp
Definition gprstate.h:39
Agnode_t * tvroot
Definition gprstate.h:46
Agnode_t * tvnext
Definition gprstate.h:47
char * infname
Definition gprstate.h:43
Agraph_t * nextgraph
Definition gprstate.h:35
gvprbinding * bindings
Definition gprstate.h:53
Exerror_f errf
Definition gprstate.h:40
int name_used
Definition gprstate.h:49
int argc
Definition gprstate.h:50
trav_type tvt
Definition gprstate.h:45
FILE * outFile
Definition gprstate.h:58
int argc
Definition gprstate.h:59
char ** argv
Definition gprstate.h:60
Exerror_f errf
Definition gprstate.h:61
int flags
Definition gprstate.h:63
Exexit_f exitf
Definition gprstate.h:62