c9s
57b4fde126
print errmsg
2014-06-02 06:48:00 +08:00
c9s
a6be7f5061
static inline
2014-06-02 06:32:30 +08:00
c9s
0eb9cad11c
r3_path_contains_slug_char function
2014-06-02 06:27:35 +08:00
c9s
6dfd37d43d
move slug related functions to slug.c and slug.h
2014-06-02 04:52:41 +08:00
c9s
c52639c431
slug parser
2014-06-02 01:01:29 +08:00
c9s
70693ea1f2
errstr parameter in slug
2014-06-01 20:51:47 +08:00
c9s
dc407f2cac
fix
2014-06-01 20:23:11 +08:00
c9s
8d2a473f54
Merge branch 'master' of github.com:c9s/r3
...
Conflicts:
include/r3.h
2014-06-01 20:20:51 +08:00
c9s
8f9c2acc5c
include config.h
2014-06-01 19:49:56 +08:00
c9s
7d6209d99c
build with 3rdparty objects
...
use -static linking when linking libr3
AM_CFLAGS and AM_LDFLAGS are Makefile.am scope options
disable valgrind tracing check-tree
Makefile.am fix
Add json support
remove useless c files
2014-06-01 19:43:45 +08:00
whitglint
9417bc76eb
Add extern "C".
2014-06-01 16:48:54 +08:00
c9s
b139d8d3f2
add const to node
2014-06-01 14:54:16 +08:00
c9s
7d69e79535
gvc fix
2014-06-01 14:53:12 +08:00
c9s
6e6de35fd0
fix tests for graphviz
2014-06-01 14:41:45 +08:00
c9s
adde7bc361
remove unused variables
2014-06-01 14:35:29 +08:00
c9s
8ee11aaa6f
reduce variables and add const char* to insert_pathl.
2014-06-01 14:33:56 +08:00
c9s
998560634e
remove unused variable and add const
2014-06-01 02:58:03 +08:00
c9s
40fa19002a
Add const for slug_compile
2014-06-01 02:56:29 +08:00
c9s
bc27293f36
more const
2014-06-01 02:54:48 +08:00
c9s
8f8dbd520b
remove const from match_entry pointer
2014-06-01 02:39:39 +08:00
c9s
1a4eb14a05
error code support
...
- return error code if compilation error occurs
- use asprintf to sprint errstr
2014-06-01 02:03:44 +08:00
c9s
e182dd3a7b
remove duplicated edge free function
2014-05-31 19:58:10 +08:00
c9s
9433e2192a
route api improvement
2014-05-31 19:56:46 +08:00
c9s
c58d48f962
Fix include
2014-05-28 21:56:22 +08:00
c9s
d400789d96
more const pointers
2014-05-28 21:09:37 +08:00
c9s
072c72621c
separate header files
2014-05-28 21:08:06 +08:00
c9s
9cb2f80e1f
more const pointers
2014-05-28 21:03:59 +08:00
c9s
a2bec00a9e
match_entry.c
2014-05-28 21:02:57 +08:00
c9s
f5996731ca
Add const for pointers
2014-05-28 21:00:02 +08:00
c9s
cf734a480c
edge branch with routes and other resets
2014-05-27 14:16:42 +08:00
c9s
60821aac0c
const pointer
2014-05-27 12:35:17 +08:00
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