Lines Matching refs:constraint
156 is set indicates that the constraint succeeds in the corresponding
170 The macro SUCCEEDS_IN_CONTEXT determines whether a a given constraint
175 #define MATCHES_NEWLINE_CONTEXT(constraint, prevn, currn) \
176 ((constraint) & 1 << (((prevn) ? 2 : 0) + ((currn) ? 1 : 0) + 4))
177 #define MATCHES_LETTER_CONTEXT(constraint, prevl, currl) \
178 ((constraint) & 1 << (((prevl) ? 2 : 0) + ((currl) ? 1 : 0)))
179 #define SUCCEEDS_IN_CONTEXT(constraint, prevn, currn, prevl, currl) \
180 (MATCHES_NEWLINE_CONTEXT(constraint, prevn, currn) \
181 && MATCHES_LETTER_CONTEXT(constraint, prevl, currl))
183 /* The following macros give information about what a constraint depends on. */
184 #define PREV_NEWLINE_DEPENDENT(constraint) \
185 (((constraint) & 0xc0) >> 2 != ((constraint) & 0x30))
186 #define PREV_LETTER_DEPENDENT(constraint) \
187 (((constraint) & 0x0c) >> 2 != ((constraint) & 0x03))
189 /* Tokens that match the empty string subject to some constraint actually
190 work by applying that constraint to determine what may follow them,
204 a constraint. */
208 unsigned constraint; /* Constraint for matching this position. */
228 unsigned char constraint; /* Constraint for this state to accept. */
357 #define ACCEPTING(s, r) ((r).states[s].constraint)
362 SUCCEEDS_IN_CONTEXT((dfa).states[state].constraint, \