mchartable(3m17n) The m17n Library mchartable(3m17n)NAME
mchartable - Create a new chartable.
SYNOPSIS
MCharTable* mchartable (MSymbol key, void * default_value)
DESCRIPTION
Create a new chartable. The mchartable() function creates a new chartable object with symbol key and the default value default_value. If
key is a managing key, the elements of the table (including the default value) are managed objects or NULL.
RETURN VALUE
If the operation was successful, mchartable() returns a pointer to the created chartable. Otherwise it returns NULL and assigns an
error code to the external variable merror_code.
COPYRIGHT
Copyright (C) 2001 Information-technology Promotion Agency (IPA)
Copyright (C) 2001-2011 National Institute of Advanced Industrial Science and Technology (AIST)
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License
<http://www.gnu.org/licenses/fdl.html>.
Version 1.6.2 12 Jan 2011 mchartable(3m17n)
Check Out this Related Man Page
Chartable(3m17n) The m17n Library Chartable(3m17n)NAME
Chartable - Chartable objects and API for them.
Typedefs
typedef struct MCharTable MCharTable
Type of chartables.
Functions
MCharTable * mchartable (MSymbol key, void *default_value)
Create a new chartable.
int mchartable_min_char (MCharTable *table)
Return the minimum character whose value is set in a chartabe.
int mchartable_max_char (MCharTable *table)
Return the maximum character whose value is set in a chartabe.
void * mchartable_lookup (MCharTable *table, int c)
Return the assigned value of a character in a chartable.
int mchartable_set (MCharTable *table, int c, void *val)
Assign a value to a character in a chartable.
int mchartable_set_range (MCharTable *table, int from, int to, void *val)
Assign a value to the characters in the specified range.
void mchartable_range (MCharTable *table, int *from, int *to)
Search for characters that have non-default value.
int mchartable_map (MCharTable *table, void *ignore, void(*func)(int, int, void *, void *), void *func_arg)
Call a function for characters in a chartable.
Variables
MSymbol Mchar_table
Symbol whose name is 'char-table'.
Detailed Description
Chartable objects and API for them.
The m17n library supports enormous number of characters. Thus, if attributes of each character are to be stored in a simple array, such an
array would be impractically big. The attributes usually used, however, are often assigned only to a range of characters. Even when all
characters have attributes, characters of consecutive character code tend to have the same attribute values.
The m17n library utilizes this tendency to store characters and their attribute values efficiently in an object called Chartable. Although
a chartable object is not a simple array, application programs can handle a chartable as if it is an array. Attribute values of a character
can be obtained by accessing a Chartable for the attribute with the character code of the specified character.
A chartable is a managed object.
Typedef Documentation
typedef struct MCharTable MCharTable
Type of chartables. The type MCharTable is for a chartable objects. Its internal structure is concealed from application programs.
Variable Documentation
MSymbol Mchar_table
Symbol whose name is 'char-table'. The symbol Mchar_table has the name 'char-table'.
Author
Generated automatically by Doxygen for The m17n Library from the source code.
COPYRIGHT
Copyright (C) 2001 Information-technology Promotion Agency (IPA)
Copyright (C) 2001-2011 National Institute of Advanced Industrial Science and Technology (AIST)
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License
<http://www.gnu.org/licenses/fdl.html>.
Version 1.6.2 12 Jan 2011 Chartable(3m17n)