Sha256: 195166d5fc0f91cfd459496b163c3b1f299b4448912d2c6a155398b314615001

Contents?: true

Size: 662 Bytes

Versions: 2

Compression:

Stored size: 662 Bytes

Contents

// Copyright (c) 2021 Peter Ohler. All rights reserved.
// Licensed under the MIT License. See LICENSE file in the project root for license details.

#ifndef OX_CACHE_H
#define OX_CACHE_H

#include <ruby.h>
#include <stdbool.h>

#define CACHE_MAX_KEY 35

struct _cache;

extern const rb_data_type_t ox_cache_type;

extern struct _cache *ox_cache_create(size_t size, VALUE (*form)(const char *str, size_t len), bool mark, bool locking);
extern void           ox_cache_free(void *ptr);
extern void           ox_cache_mark(void *ptr);
extern VALUE          ox_cache_intern(struct _cache *c, const char *key, size_t len, const char **keyp);

#endif /* OX_CACHE_H */

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
ox-2.14.20 ext/ox/cache.h
ox-2.14.19 ext/ox/cache.h