Yet Another Redis Library

Mirror of https://github.com/electric-sheep-co/yarl
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Ryan Joseph e5b5947d51 List commands (phase one) 1 年之前
azuresphere Update VS project to correctly reference yarl include path 1 年之前
src List commands (phase one) 1 年之前
test List commands (phase one) 1 年之前
.gitignore Update .gitignore 1 年之前
LICENSE Create LICENSE 1 年之前
README.md Add KEYS, EXPIRE & EXPIREAT commands 1 年之前

README.md

yarl

Yet Another Redis Library

A couple dev kits arrived that wanted for a POSIX C Redis library, so this is a port of arduino-redis into straight-C. Some day, that library will consume this one & morph into just a nice C++ facade.

Given the simple MCU platforms being targetted, a “bring your own file descriptor” interface seemed like it would do nicely. To that end, RedisConnection_t is typedefed simply to int, a.k.a. a file descriptor. It could be a socket FD, a pipe FD, even an actual file descriptor if you’re so inclined. Anything that can be read(2) from and write(2)-en to. BYOFD!

Building

The test app

Should build & run on any POSIX platform.

clang -o yarl_test  -Wall -Werror -I./src ./src/*.c ./test/test.c
  • add -DDEBUG=1 to generate debugging logging
  • add -O0 -g2 to disable optimizations and generate symbols, to enable debugging via lldb/gdb

The Azure Sphere library

Requires the Azure Sphere SDK (so also Windows & VS17 or VS19).

The VS project in the azuresphere directory is preconfigured to build a static library named libyarl.a in the standard build output location.

See this project for an example of consuming yarl as a build dependency.