`bloom_t` is defined as a struct.
`_t` can mislead the user to think of bloom_t
as a typedef (see our coding conventions) instead of a struct.
Thus, I modified `struct bloom_t` to be a *typedefed* struct.
Another solution would be to rename bloom_t to sth. like bloom_s
everywhere and use `struct bloom_s` instead of `bloom_t`.
Quoting myself:
> The code of sys/lib/hashtable.c is very badly adapted for embedded
> systems. The used primes are huge, and the limit is entirely
> unrealistic. Why do we ship this file?
In #1564 we came to the conclusion that we don't need this code.
Closes#1564.
This is a malloc-free implementation of the Concise Binary Object
Representation (CBOR) data format for the RIOT-OS.
This implementation mostly stand-alone, and it should be pretty easy to
port to other platforms. We're only using the C STL and some custom
network-related functionaliy which could be easily replaced by depending
on arpa/inet.h.
The CBOR API is straight-forward to use and provides encoding/decoding
functionality for all major C types, such as:
- int
- uint64_t
- int64_t
- float
- double
- char*
- struct tm
- time_t
It is possible to conditionally compile this module via CFLAGS:
- CBOR_NO_SEMANTIC_TAGGING: All semantic-tagging features removed
- CBOR_NO_CTIME: All ctime related features removed
- CBOR_NO_FLOAT: All floating-point related features removed
- CBOR_NO_PRINT: All features depending on printf removed
Instead of using differing integer types use kernel_pid_t for process
identifier. This type is introduced in a new header file to avoid
circular dependencies.
This PR converts tabs to white spaces.
The statement I used for the conversion:
```find . -name "*.[ch]" -exec zsh -c 'expand -t 4 "$0" > /tmp/e && mv /tmp/e "$0"' {} \;```
Afterwards, I had a quick overview of the converted files to prevent odd indentation.
There is no need to test the "handler" set in the vtimer struct, and
have some code executed then. We just can make the code to execute the
handler. To lengthy `if else if`, just a call.