22 Commits

Author SHA1 Message Date
Yossi Gottlieb
ee0ea33013 Add RedisModule_Log() logging API function. 2016-06-23 12:01:44 +02:00
Yossi Gottlieb
9e81f0850f Remove gcc warning when redismodule.h is included by a multi-file
module.
2016-06-07 13:31:33 +03:00
antirez
9deb98167b Modules: support for modules native data types. 2016-06-03 18:14:04 +02:00
antirez
cae2bd9aca Modules: initial pool allocator and a LEFTPAD usage example. 2016-05-14 19:42:31 +02:00
antirez
bcdb40f18d Modules: RM_GetClientId() implemented. 2016-05-10 06:40:11 +02:00
antirez
8ff424c77f Modules: command <-> core interface modified to get flags & keys. 2016-05-10 06:40:09 +02:00
antirez
e147db3f80 Modules: Hash API defines made more uniform. 2016-05-10 06:40:09 +02:00
antirez
efddfedc5d Modules: Hash type API WIP #2. 2016-05-10 06:40:09 +02:00
antirez
b1778b855d Modules: Hash type API WIP #1. 2016-05-10 06:40:09 +02:00
antirez
6c6be5136c Modules: postponed array lengths. 2016-05-10 06:40:09 +02:00
antirez
46ea6fd58b Modules: zset lex iterator #3. 2016-05-10 06:40:09 +02:00
antirez
5b8a856d14 Modules: zset iterator redesign #1. 2016-05-10 06:40:08 +02:00
antirez
073e9a3213 Modules: sorted set iterators WIP #3. 2016-05-10 06:40:08 +02:00
antirez
d43b5498f4 Modules: sorted set iterators WIP. 2016-05-10 06:40:08 +02:00
antirez
cfd4c3df7a Modules: ZSET API WIP #4. 2016-05-10 06:40:07 +02:00
antirez
b3c26b672a Modules: ZSET API WIP #3. 2016-05-10 06:40:07 +02:00
antirez
29ae2a13c7 Modules: ZSET API WIP #2. 2016-05-10 06:40:07 +02:00
antirez
2154600f4d Modules: expire API and documentation. 2016-05-10 06:40:07 +02:00
antirez
2deb684011 Modules: RedisModule_ReplyWithCallReply(). 2016-05-10 06:40:07 +02:00
antirez
73c12d9faa Modules: RedisModule_ReplyWithNull() implemented. 2016-05-10 06:40:06 +02:00
antirez
b72253dd51 Modules: avoid conflict between modules func pointers and dynamic symbols.
In modules we fill a set of function pointers defined in redismodule.h,
populating a set of APIs that are callable from the module. We use this
manual process instead of resorting to dynamic linking so that we have
exact control on how we pass the API to the module, and we can even pass
different functions for the same name, depending on the API version
declared by the module.

However if the function pointers in redismodule.h and the functions
defined in module.c have the same name, they conflict since the core
exports the symbols to the module.

There is probably some compiler flags trick to avoid this, but in order
to be safer in the future and be more easily compatible with different
builidng systems, this commit changes the internal function prefix from
RedisModule_ to RM_, so for example:

    RM_StringSet() will be exported as RedisModule_StringSet()
2016-05-10 06:40:05 +02:00
antirez
83fe739fb6 Modules: first preview 31 March 2016. 2016-05-10 06:40:05 +02:00