Blame patterns.h

Packit Service 6c8a3b
/* Copyright (C) 1995 Bjoern Beutel. */
Packit Service 6c8a3b
Packit Service 6c8a3b
/* Description. =============================================================*/
Packit Service 6c8a3b
Packit Service 6c8a3b
/* This module contains function to compile and execute pattern matching 
Packit Service 6c8a3b
 * strings (regular expressions). */
Packit Service 6c8a3b
Packit Service 6c8a3b
/* Constants. ===============================================================*/
Packit Service 6c8a3b
Packit Service 6c8a3b
enum {PATTERN_VAR_MAX = 5}; /* Maximum number of pattern variables. */
Packit Service 6c8a3b
Packit Service 6c8a3b
/* Variables. ===============================================================*/
Packit Service 6c8a3b
Packit Service 6c8a3b
extern string_t pattern_var[ PATTERN_VAR_MAX ]; /* Pattern variables. */
Packit Service 6c8a3b
Packit Service 6c8a3b
/* Functions. ===============================================================*/
Packit Service 6c8a3b
Packit Service 6c8a3b
extern string_t compile_pattern( string_t string, int_t pattern_var_no );
Packit Service 6c8a3b
/* Convert STRING to a pattern to be used as input to "match_pattern".
Packit Service 6c8a3b
 * If PATTERN_VAR_NO != -1, mark the pattern so the string matching this
Packit Service 6c8a3b
 * pattern will be stored in PATTERN_VAR[ PATTERN_VAR_NO ].
Packit Service 6c8a3b
 * The result pattern must be freed after usage. */
Packit Service 6c8a3b
Packit Service 6c8a3b
extern bool_t match_pattern( string_t string, string_t pattern );
Packit Service 6c8a3b
/* Test whether STRING matches PATTERN (a string of chars compiled with
Packit Service 6c8a3b
 * "compile_pattern") and set substring indices in PATTERN_VAR.
Packit Service 6c8a3b
 * The substrings remain valid until "compile_pattern" is called again. */
Packit Service 6c8a3b
Packit Service 6c8a3b
extern void terminate_patterns( void );
Packit Service 6c8a3b
/* Terminate this module. */
Packit Service 6c8a3b
Packit Service 6c8a3b
/* End of file. =============================================================*/