Commit graph

139 commits

Author SHA1 Message Date
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