~vcs-imports/gawk/master

« back to all changes in this revision

Viewing changes to dfa.h

  • Committer: Juergen Kahrs
  • Date: 2014-06-24 11:18:33 UTC
  • mfrom: (408.2.336)
  • Revision ID: git-v1:f1245d04a9f076773c60499b468f44ed9c91b59b
Merge remote-tracking branch 'origin/master' into cmake

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/* dfa.h - declarations for GNU deterministic regexp compiler
2
 
   Copyright (C) 1988, 1998, 2007, 2009-2013 Free Software Foundation, Inc.
 
2
   Copyright (C) 1988, 1998, 2007, 2009-2014 Free Software Foundation, Inc.
3
3
 
4
4
   This program is free software; you can redistribute it and/or modify
5
5
   it under the terms of the GNU General Public License as published by
19
19
/* Written June, 1988 by Mike Haertel */
20
20
 
21
21
#include <regex.h>
 
22
#ifdef HAVE_STDBOOL_H
 
23
#include <stdbool.h>
 
24
#else
 
25
#include "missing_d/gawkbool.h"
 
26
#endif /* HAVE_STDBOOL_H */
22
27
#include <stddef.h>
23
28
 
24
29
/* Element of a list of strings, at least one of which is known to
25
30
   appear in any R.E. matching the DFA. */
26
31
struct dfamust
27
32
{
28
 
  int exact;
 
33
  bool exact;
 
34
  bool begline;
 
35
  bool endline;
29
36
  char *must;
30
37
  struct dfamust *next;
31
38
};
68
75
extern char *dfaexec (struct dfa *d, char const *begin, char *end,
69
76
                      int newline, size_t *count, int *backref);
70
77
 
 
78
/* Return a superset for D.  The superset matches everything that D
 
79
   matches, along with some other strings (though the latter should be
 
80
   rare, for efficiency reasons).  Return a null pointer if no useful
 
81
   superset is available.  */
 
82
extern struct dfa *dfasuperset (struct dfa const *d) _GL_ATTRIBUTE_PURE;
 
83
 
 
84
/* The DFA is likely to be fast.  */
 
85
extern bool dfaisfast (struct dfa const *) _GL_ATTRIBUTE_PURE;
 
86
 
71
87
/* Free the storage held by the components of a struct dfa. */
72
88
extern void dfafree (struct dfa *);
73
89
 
99
115
   takes a single argument, a NUL-terminated string describing the error.
100
116
   The user must supply a dfaerror.  */
101
117
extern _Noreturn void dfaerror (const char *);
 
118
 
 
119
extern int using_utf8 (void);