Commit graph

149 commits

Author SHA1 Message Date
c9s
f596c7392d Add const 2014-05-27 12:34:28 +08:00
c9s
9f8176447b const char * 2014-05-27 01:08:01 +08:00
c9s
54397987bd Add const 2014-05-27 01:07:33 +08:00
c9s
533eb6b9c3 include stdbool.h 2014-05-27 00:47:59 +08:00
c9s
aaf35d22d8 include stdbool.h 2014-05-27 00:47:21 +08:00
c9s
7aaed3e5d7 merge str_array.h 2014-05-26 21:39:36 +08:00
c9s
94c71b5431 move frequently used fields to struct head. 2014-05-24 19:04:34 +08:00
c9s
ef9962c958 struct field data type improvement for memory usage. 2014-05-24 18:45:43 +08:00
c9s
da47f06bdc update benchmakr result 2014-05-24 17:22:29 +08:00
c9s
0909ab8af9 put combined_pattern to the end of struct 2014-05-24 17:14:17 +08:00
c9s
c1cd7444cb Add struct fields optimization 2014-05-24 17:13:55 +08:00
c9s
628f09a8f4 Add OP_EXPECT_MORE_ALPHA opcode 2014-05-23 22:58:20 +08:00
c9s
333fabd795 insert path for opcode 2014-05-23 16:18:58 +08:00
c9s
fe70b55253 Add node type for comparison 2014-05-23 16:18:57 +08:00
c9s
403b1d9ba2 Add opcode to edge 2014-05-23 16:18:57 +08:00
c9s
ad6b7b236f combined_pattern_len is not used 2014-05-23 16:18:57 +08:00
c9s
c1e5ea4393 Add OP_EXPECT_NODASH opcode 2014-05-23 16:18:56 +08:00
c9s
4d93d217a4 test r3_pattern_to_opcode 2014-05-23 16:18:56 +08:00
c9s
a41c9187ac Add some basic opcode 2014-05-23 16:18:56 +08:00
c9s
63bf604d9e fix request method code 2014-05-23 00:21:40 +08:00
c9s
288cdc91dd R3_LIST_H 2014-05-22 22:22:03 +08:00
c9s
5a10c82ea5 R3_NODE_H as the include guard 2014-05-22 22:21:29 +08:00
c9s
c503a6d5d3 use jemalloc only in jemalloc major version > 2 2014-05-22 11:41:51 +08:00
c9s
594b10cbcb travis-ci is using jemalloc 2.1+ 2014-05-22 11:09:44 +08:00
c9s
07ef938e3d check jemalloc version 2014-05-22 11:09:44 +08:00
c9s
4d0c22d8ec fix linking issue 2014-05-22 11:09:44 +08:00
Omer Katz
3ea9354e0b Implemented zstrndup. 2014-05-21 11:39:49 +03:00
Omer Katz
9c191682da Added zmalloc from redis in order to allow different allocators. 2014-05-20 20:50:15 +03:00
c9s
0064eb27a1 const to node * n 2014-05-21 01:22:49 +08:00
c9s
5bd1757e5f function name fix 2014-05-21 00:47:09 +08:00
c9s
cae305b92d when child is not endpoint, return NULL 2014-05-21 00:37:27 +08:00
c9s
90890b09e5 put r3_define.h back XD becase we depends on bool 2014-05-21 00:33:19 +08:00
c9s
92e2ddf066 remove r3_define.h 2014-05-20 23:54:57 +08:00
c9s
fbbb976768 r3_define.h is removed 2014-05-20 23:54:15 +08:00
c9s
7ba0efc60c use doublecirlce for endpoint nodes 2014-05-20 23:48:35 +08:00
c9s
5183e9a052 merge r3_define.h into r3.h 2014-05-20 23:33:51 +08:00
c9s
750a9beaa4 _r3_tree_insert_pathl to r3_tree_insert_pathl_ 2014-05-20 23:30:36 +08:00
c9s
02b4008a69 str_split is unused 2014-05-20 23:29:17 +08:00
c9s
85001c6327 Rename compile_slug to slug_compile 2014-05-20 23:25:55 +08:00
c9s
99819c4bbb move strndiff and strdiff to node.c and make it private 2014-05-20 23:25:12 +08:00
c9s
26c7e8896e Rename count_slug to slug_count 2014-05-20 23:21:15 +08:00
c9s
401443f7ac Add r3_ prefix to route struct related functions 2014-05-19 10:39:03 +08:00
c9s
2ac6f87422 Fix r3_tree_match_route 2014-05-19 10:34:48 +08:00
c9s
2084675423 r3_tree_insert_path API changes 2014-05-19 10:12:41 +08:00
c9s
33c0c3fea7 Adjust node struct field ordering (for memory alignment) 2014-05-18 20:32:23 +08:00
c9s
4a0412d4e9 check in files (slug tests) 2014-05-18 20:11:07 +08:00
c9s
baf23fafb0 fix pattern matching for /user/{id}-{user} 2014-05-18 20:09:42 +08:00
c9s
f039cc3c8f Fix child insertion 2014-05-18 20:09:42 +08:00
c9s
7d6113d17d truncate edge pattern in r3_edge_branch 2014-05-18 20:09:42 +08:00
c9s
60991c3d73 condition_* => route_* 2014-05-18 13:06:36 +08:00
c9s
1632f9807e r3_node_match_condition 2014-05-18 12:56:53 +08:00
c9s
641d1e53d8 fix condition match for request method 2014-05-18 12:49:58 +08:00
c9s
518fad82f2 copy data to condition endpoints 2014-05-18 12:40:06 +08:00
c9s
e6c7d3e45e Add r3_tree_match_with_entry function to match with match_entry 2014-05-18 12:32:20 +08:00
c9s
58cd893dea insert conditions at endpoints 2014-05-18 12:28:12 +08:00
c9s
e0eca85cbc remove route_split_pattern function 2014-05-18 12:24:07 +08:00
c9s
a4481a8ecb Add route_cmp function to compare route 2014-05-18 11:59:30 +08:00
c9s
4efd1b9702 r3_tree_insert_pathn to r3_tree_insert_pathl 2014-05-18 11:13:44 +08:00
c9s
08a059465e Append one more argument to r3_tree_insert_pathn 2014-05-18 11:13:02 +08:00
c9s
64acfd8cd6 Rename route_ptr => route 2014-05-18 11:06:24 +08:00
c9s
5ca345d570 Rename route_info to route 2014-05-18 11:05:01 +08:00
c9s
eb3ef7df0f rename request_methods to request_method 2014-05-18 11:04:13 +08:00
c9s
9639174f73 Merge branch 'master' into feature/route-info
Conflicts:
	include/r3.h
	tests/bench_str.csv
2014-05-18 10:36:14 +08:00
c9s
b56a52e1d8 Add --enable-graphviz option for graphviz:
Graphviz API is changed in 2014* version.
And the version on ubuntu 13.10  is 2013*
Which causes build fail.
2014-05-18 09:29:31 +08:00
c9s
c1d90dd138 performance improvement on plain string edge matching 2014-05-18 08:29:26 +08:00
c9s
b7d20ecc24 Add gvc_render and gvc_render tests 2014-05-18 08:15:32 +08:00
c9s
d46d189e95 fix dep libgvc 2014-05-18 08:15:32 +08:00
c9s
9bab1bd076 match_entry_createl 2014-05-17 23:54:18 +08:00
c9s
639dd1e0e6 intiialize route_info struct 2014-05-17 19:25:25 +08:00
c9s
563278fba8 Add route_info structure 2014-05-17 18:57:36 +08:00
c9s
c19186ab77 Add more columns to match_entry 2014-05-17 18:56:13 +08:00
c9s
0c6afd03b7 use HAVE_STR*DUP config to check function definitions 2014-05-17 07:26:47 +08:00
Cindy Wang (CindyLinz)
1f91b8ea35 my_strdup / my_strndup size_t -> int 2014-05-17 03:17:51 +08:00
Cindy Wang (CindyLinz)
d5c5a5368f avoid redefines 2014-05-17 02:51:21 +08:00
Cindy Wang (CindyLinz)
df4dbbe2a6 self provided strndup & strdup 2014-05-17 00:35:56 +08:00
c9s
2381f54dc4 allocate ov space when compiling the tree 2014-05-16 20:58:30 +08:00
c9s
40e927a4f1 Add dynamic ov_count vector 2014-05-16 20:51:30 +08:00
c9s
6b9c15febb File renaming 2014-05-16 20:22:25 +08:00
c9s
2a0e120a91 append captured tokens to match_entry 2014-05-16 19:12:01 +08:00
c9s
ebe4c008fb inline function optimization 2014-05-16 18:57:36 +08:00
c9s
046ec9e977 Add benchmark and bug fixes 2014-05-16 18:03:52 +08:00
c9s
0e488403a9 API rename & cleanup 2014-05-16 15:29:25 +08:00
c9s
f57ae07e4a more route tests 2014-05-16 14:36:48 +08:00
c9s
57dce698db pcre stuff 2014-05-16 14:05:51 +08:00
c9s
fe21914e00 include files 2014-05-16 12:33:59 +08:00
c9s
9ee066fa3f Fix slug branch problem 2014-05-16 00:00:19 +08:00
c9s
824ae8784e redge_branch function to branch the edge 2014-05-15 23:46:49 +08:00
c9s
cd3e98465b build a really prefix tree 2014-05-15 22:57:13 +08:00
c9s
01a0b0da01 combine_pattern function 2014-05-15 21:17:30 +08:00
c9s
89eaad6006 Add slug_to_pcre pattern function 2014-05-15 20:38:07 +08:00
c9s
4fb498c9b3 basic radix tree for route patterns 2014-05-15 18:28:33 +08:00
c9s
7326933065 supporting endpoint 2014-05-15 18:26:41 +08:00
c9s
2348387f3c more tests 2014-05-15 18:02:10 +08:00
c9s
f741395e5f test find edge 2014-05-15 13:39:50 +08:00
c9s
3989f2150f ltrim_slash and related test 2014-05-15 12:53:48 +08:00
c9s
c91c06ec3b Add token list tests 2014-05-15 12:47:14 +08:00
c9s
767dba6e86 Rename token_list to token_array 2014-05-15 12:21:45 +08:00
c9s
f8539fd950 Add token list struct 2014-05-15 11:52:45 +08:00
c9s
ff1800cd4a add include 2014-05-15 10:10:34 +08:00