home *** CD-ROM | disk | FTP | other *** search
- /*
- * @(#)match.h 1.4 95/01/31 James Gosling
- *
- * Copyright (c) 1994 Sun Microsystems, Inc. All Rights Reserved.
- *
- * Permission to use, copy, modify, and distribute this software
- * and its documentation for NON-COMMERCIAL purposes and without
- * fee is hereby granted provided that this copyright notice
- * appears in all copies. Please refer to the file "copyright.html"
- * for further important copyright and licensing information.
- *
- * SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF
- * THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
- * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
- * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR
- * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
- * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES.
- */
-
- /*
- * Definitions having to do with pattern matching
- */
-
- #ifndef _MATCH_H_
- #define _MATCH_H_
-
- #ifndef _TREE_
- #include <tree.h>
- #endif
-
- struct template {
- struct node *left, *right;
- struct node *replacement;
- struct template **backlink;
- struct template *sameset;
- struct template *next;
- int flags;
- char replaceafter;
- };
-
- struct ruleset {
- struct template *templates;
- struct ruleset *prev;
- };
-
- struct ruleset *thisruleset;
-
- struct template *templates[N_OPS];
-
- struct match_state {
- int mask;
- struct node *vars[10];
- };
-
- #endif /* !_MATCH_H_ */
-