Data Fields
refcnt Struct Reference

A reference counter. More...

#include <refcnt.h>

Data Fields

int count
 Current reference count. More...
void(* free )(struct refcnt *refcnt)
 Free containing object. More...

Detailed Description

A reference counter.

This data structure is designed to be embedded within a reference-counted object.

Reference-counted objects are freed when their reference count drops below zero. This means that a freshly allocated-and-zeroed reference-counted object will be freed on the first call to ref_put().

Definition at line 26 of file refcnt.h.

Field Documentation

◆ count

int refcnt::count

Current reference count.

When this count is decremented below zero, the free() method will be called.

Definition at line 32 of file refcnt.h.

Referenced by certstore_discard(), ref_decrement(), and ref_increment().

◆ free

void( * refcnt::free) (struct refcnt *refcnt)

Free containing object.

This method is called when the reference count is decremented below zero.

If this method is left NULL, the standard library free() function will be called. The upshot of this is that you may omit the free() method if the refcnt object is the first element of your reference-counted struct.

Definition at line 43 of file refcnt.h.

Referenced by ref_decrement().

The documentation for this struct was generated from the following file: