man m17nObject () - Managed objects are objects managed by the reference count.

NAME

Managed Object - Managed objects are objects managed by the reference count.

Data Structures

struct M17NObjectHead

The first member of a managed object.

Functions

void * m17n_object (int size, void(*freer)(void *))

Allocate a managed object. int m17n_object_ref (void *object)

Increment the reference count of a managed object. int m17n_object_unref (void *object)

Decrement the reference count of a managed object.

Detailed Description

There are some types of m17n objects that are managed by their reference count. Those objects are called managed objects. When created, the reference count of a managed object is initialized to one. The m17n_object_ref() function increments the reference count of a managed object by one, and the m17n_object_unref() function decrements by one. A managed object is automatically freed when its reference count becomes zero.

A property whose key is a managing key can have only a managed object as its value. Such functions as msymbol_put() and mplist_put() pay special attention to such a property.

In addition to the predefined managed object types, users can define their own managed object types. See the documentation of the m17n_object() for more details.

Data Structure Documentation

M17NObjectHead

The first member of a managed object.

FIELD DOCUMENTATION:

void* M17NObjectHead::filler[2]