• Viktor Söderqvist's avatar
    Add modules API for streams (#8288) · 4355145a
    Viktor Söderqvist authored
    APIs added for these stream operations: add, delete, iterate and
    trim (by ID or maxlength). The functions are prefixed by RM_Stream.
    
    * RM_StreamAdd
    * RM_StreamDelete
    * RM_StreamIteratorStart
    * RM_StreamIteratorStop
    * RM_StreamIteratorNextID
    * RM_StreamIteratorNextField
    * RM_StreamIteratorDelete
    * RM_StreamTrimByLength
    * RM_StreamTrimByID
    
    The type RedisModuleStreamID is added and functions for converting
    from and to RedisModuleString.
    
    * RM_CreateStringFromStreamID
    * RM_StringToStreamID
    
    Whenever the stream functions return REDISMODULE_ERR, errno is set to
    provide additional error information.
    
    Refactoring: The zset iterator fields in the RedisModuleKey struct
    are wrapped in a union, to allow the same space to be used for type-
    specific info for streams and allow future use for other key types.
    4355145a
stream.c 9.3 KB