Add r3_tree_match_with_entry function to match with match_entry
This commit is contained in:
parent
58cd893dea
commit
e6c7d3e45e
4 changed files with 14 additions and 20 deletions
|
@ -124,6 +124,8 @@ void r3_tree_compile_patterns(node * n);
|
|||
|
||||
node * r3_tree_match(node * n, char * path, int path_len, match_entry * entry);
|
||||
|
||||
node * r3_tree_match_with_entry(node * n, match_entry * entry);
|
||||
|
||||
bool r3_node_has_slug_edges(node *n);
|
||||
|
||||
edge * r3_edge_create(char * pattern, int pattern_len, node * child);
|
||||
|
@ -148,8 +150,6 @@ condition * condition_createl(char * path, int path_len);
|
|||
|
||||
int condition_cmp(condition *r1, condition *r2);
|
||||
|
||||
edge * r3_edge_route_create(condition * condition, node * child);
|
||||
|
||||
void r3_node_append_condition(node * n, condition * condition, void * data);
|
||||
|
||||
void condition_free(condition * condition);
|
||||
|
|
23
src/node.c
23
src/node.c
|
@ -211,6 +211,11 @@ void match_entry_free(match_entry * entry) {
|
|||
}
|
||||
|
||||
|
||||
node * r3_tree_match_with_entry(node * n, match_entry * entry) {
|
||||
return r3_tree_match(n, entry->path, entry->path_len, entry);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* This function matches the URL path and return the left node
|
||||
*
|
||||
|
@ -573,22 +578,4 @@ void r3_node_append_condition(node * n, condition * condition, void * data) {
|
|||
n->conditions[ n->condition_len++ ] = condition;
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a condition-only edge. (without pattern)
|
||||
*/
|
||||
edge * r3_edge_route_create(condition * condition, node * child) {
|
||||
edge * e = (edge*) malloc( sizeof(edge) );
|
||||
/*
|
||||
e->pattern = NULL;
|
||||
e->pattern_len = 0;
|
||||
e->child = child;
|
||||
// e->condition = NULL;
|
||||
*/
|
||||
return e;
|
||||
}
|
||||
|
||||
/*
|
||||
char * r3_node_trace(node * n) {
|
||||
|
||||
}
|
||||
*/
|
||||
|
|
|
@ -121,3 +121,7 @@
|
|||
1400387232,11035725.37
|
||||
1400387264,11006703.61
|
||||
1400387291,11123431.08
|
||||
1400387303,10762934.26
|
||||
1400387318,10842286.92
|
||||
1400387384,10651069.93
|
||||
1400387532,11055554.04
|
||||
|
|
|
|
@ -261,6 +261,9 @@ START_TEST(test_insert_route)
|
|||
r3_tree_insert_route(n, r1, &var1);
|
||||
r3_tree_insert_route(n, r2, &var2);
|
||||
|
||||
node *m;
|
||||
m = r3_tree_match(n , "/qux/bar/corge", strlen("/qux/bar/corge"), NULL);
|
||||
|
||||
match_entry_free(entry);
|
||||
condition_free(r1);
|
||||
condition_free(r2);
|
||||
|
|
Loading…
Reference in a new issue