#include "def.h"#include <string.h>Go to the source code of this file.
Data Structures | |
| struct | sub_stack |
Defines | |
| #define | MAXP 32 |
| #define | WR 1 |
| #define | POP 2 |
| #define | HAS_ARG (UNARY | BINARY) |
Typedefs | |
| typedef struct sub_stack | SUB_STACK |
Functions | |
| void | subject_push (NODE *old) |
| NODE * | subject_pop () |
| static RULE * | match (NODE *exp) |
| static int | match_types (OP *guard, NODE *exp) |
| static int | match_sub (NODE *head, NODE *exp) |
| NODE * | walk (NODE *subject) |
| NODE * | instantiate (NODE *body) |
Variables | |
| NODE * | param_val [MAXP] |
| int | learn |
| int | bondage |
| static SNODE * | stack |
| static SUB_STACK * | sub_top = NULL |
Definition at line 280 of file match.c.
References arity_name(), error(), expr_copy(), termnode::label, termnode::left, name_copy(), node_new(), NULL, stringnode::op, numbernode::op, termnode::op, OP_NAME, OP_NUM, OP_STR, OP_TERM, termnode::right, stringnode::value, and numbernode::value.
Referenced by walk().
Definition at line 69 of file match.c.
References rule::head, match_sub(), rule::next, NULL, and OP_TERM.
Referenced by walk().
| NODE* subject_pop | ( | ) |
| void subject_push | ( | NODE * | old | ) |
Definition at line 167 of file match.c.
References op::arity, BINARY, rule::body, bondage, error(), op::eval, expr_copy(), expr_free(), expr_print(), expr_update(), FALSE, HAS_ARG, snode::info, instantiate(), learn, match(), name_free(), name_print(), name_space_insert(), snode::next, snode::node, NULL, namenode::op, node::op, OP_NAME, OP_TERM, POP, POSTFIX, primitive_execute(), rule_print(), rule::space, st_free(), st_get(), rule::tag, TRUE, untyped_prim, verbose, rule::verbose, and WR.
Referenced by main().
| int bondage |
1.5.4