40#define GRAPH_EOF_TOKEN '@'
67#define isatty(x) gv_isatty_suppression
71#define YY_INPUT(buf,result,max_size) \
72 if ((result = Disc->io->afread(Ifile, buf, max_size)) < 0) \
73 YY_FATAL_ERROR( "input in flex scanner failed" )
82 "pending string data that was not consumed (missing "
83 "endstr()/endhtmlstr()?)");
118 char*
s = aagtext + 1;
121 r = sscanf(
s,
"%d %1[\"]%n", &
lineno, buf, &
cnt);
131 while (*e && *e !=
'"') e++;
132 if (e != p && *e ==
'"') {
145 const char *
dot = strchr(aagtext,
'.');
147 return dot !=
NULL &&
dot != &aagtext[aagleng - 1];
156 char c = aagtext[aagleng - 1];
165 agwarningf(
"syntax ambiguity - badly delimited number '%s' in line %d of "
static size_t agxbput(agxbuf *xb, const char *s)
append string s into xb
static size_t agxblen(const agxbuf *xb)
return number of characters currently stored
static char * agxbuse(agxbuf *xb)
static void * gv_realloc(void *ptr, size_t old_size, size_t new_size)
static double len(glCompPoint p)
static int cnt(Dict_t *d, Dtlink_t **set)
void agwarningf(const char *fmt,...)
void agsetfile(const char *f)
sets the current file name for subsequent error reporting
void agreadline(int n)
sets input line number for subsequent error reporting
char * agstrdup(Agraph_t *, const char *)
returns a pointer to a reference-counted copy of the argument string, creating one if necessary
char * agstrdup_html(Agraph_t *, const char *)
replacements for ctype.h functions
static bool gv_isdigit(int c)
static const char * InputFile
void aglexinit(Agdisc_t *disc, void *ifile)
static void storeFileName(char *fname, size_t len)
static bool twoDots(void)
static void ppDirective(void)
static void endstr_html(void)
static void addstr(char *src)
int gv_isatty_suppression
static void beginstr(void)
static bool startswith(const char *s, const char *prefix)
does the string s begin with the string prefix?
182LETTER [A-Za-z_\200-\377]
184NAME {LETTER}({LETTER}|{DIGIT})*
185NUMBER [-]?(({DIGIT}+(\.{DIGIT}*)?)|(\.{DIGIT}+))(\.|{LETTER})?
191{GRAPH_EOF_TOKEN} return(EOF);
214<qstring>[\\]["] addstr (
"\"");
215<qstring>[\\][\\] addstr (
"\\\\");
218<qstring>([^"\\\n]*|[\\]) addstr(aagtext);
223<hstring>([^><\n]*) addstr(aagtext);
247 agxbprint(&xb,
" scanning a HTML string (missing '>'? bad nesting? longer than %d?)",
YY_BUF_SIZE);
269#ifndef YY_CALL_ONLY_ARG
270# define YY_CALL_ONLY_ARG void
static void agxbfree(agxbuf *xb)
free any malloced resources
static int agxbprint(agxbuf *xb, const char *fmt,...)
Printf-style output to an agxbuf.
static int agxbputc(agxbuf *xb, char c)
add character to buffer
void agerrorf(const char *fmt,...)
int aagwrap(YY_CALL_ONLY_ARG)
void aagerror(const char *str)