#ifndef __EWOK_RLW_H__
#define __EWOK_RLW_H__
#include "ewok.h"
#define RLW_RUNNING_BITS …
#define RLW_LITERAL_BITS …
#define RLW_LARGEST_RUNNING_COUNT …
#define RLW_LARGEST_LITERAL_COUNT …
#define RLW_LARGEST_RUNNING_COUNT_SHIFT …
#define RLW_RUNNING_LEN_PLUS_BIT …
static inline int rlw_get_run_bit(const eword_t *word)
{ … }
static inline void rlw_set_run_bit(eword_t *word, int b)
{ … }
static inline void rlw_xor_run_bit(eword_t *word)
{ … }
static inline void rlw_set_running_len(eword_t *word, eword_t l)
{ … }
static inline eword_t rlw_get_running_len(const eword_t *word)
{ … }
static inline eword_t rlw_get_literal_words(const eword_t *word)
{ … }
static inline void rlw_set_literal_words(eword_t *word, eword_t l)
{ … }
static inline eword_t rlw_size(const eword_t *self)
{ … }
struct rlw_iterator { … };
void rlwit_init(struct rlw_iterator *it, struct ewah_bitmap *bitmap);
void rlwit_discard_first_words(struct rlw_iterator *it, size_t x);
size_t rlwit_discharge(
struct rlw_iterator *it, struct ewah_bitmap *out, size_t max, int negate);
static inline size_t rlwit_word_size(struct rlw_iterator *it)
{ … }
static inline size_t rlwit_literal_words(struct rlw_iterator *it)
{ … }
#endif