Provided by: m17n-docs_1.6.2-2_all bug

NAME

       Symbol - Symbol objects and API for them.

   Typedefs
       typedef struct MSymbolStruct * MSymbol
           Type of symbols.

   Functions
       MSymbol msymbol (const char *name)
           Get a symbol.
       MSymbol msymbol_as_managing_key (const char *name)
           Create a managing key.
       int msymbol_is_managing_key (MSymbol symbol)
           Check if a symbol is a managing key.
       MSymbol msymbol_exist (const char *name)
           Search for a symbol that has a specified name.
       char * msymbol_name (MSymbol symbol)
           Get symbol name.
       int msymbol_put (MSymbol symbol, MSymbol key, void *val)
           Set the value of a symbol property.
       void * msymbol_get (MSymbol symbol, MSymbol key)
           Get the value of a symbol property.
       int msymbol_put_func (MSymbol symbol, MSymbol key, M17NFunc func)
           Set the value (function pointer) of a symbol property.
       M17NFunc msymbol_get_func (MSymbol symbol, MSymbol key)
           Get the value (function pointer) of a symbol property.

   Variables
       MSymbol Mnil
           Symbol whose name is 'nil'.
       MSymbol Mt
           Symbol whose name is 't'.
       MSymbol Mstring
           Symbol whose name is 'string'.
       MSymbol Msymbol
           Symbol whose name is 'symbol'.

Detailed Description

       Symbol objects and API for them.

       The m17n library uses objects called symbols as unambiguous identifiers. Symbols are
       similar to atoms in the X library, but a symbol can have zero or more symbol properties. A
       symbol property consists of a key and a value, where key is also a symbol and value is
       anything that can be cast to (void *). 'The symbol property that belongs to the symbol S
       and
           whose key is K' may be shortened to 'K property of S'.

       Symbols are used mainly in the following three ways.

       • As keys of symbol properties and other properties.
       • To represent various objects, e.g. charsets, coding systems, fontsets.
       • As arguments of the m17n library functions to control their behavior.
       There is a special kind of symbol, a managing key. The value of a property whose key is a
       managing key must be a managed object. See Managed Object for the detail.

Typedef Documentation

   typedef struct MSymbolStruct* MSymbol
       Type of symbols. The type MSymbol is for a symbol object. Its internal structure is
       concealed from application programs.

Variable Documentation

   MSymbol Mnil
       Symbol whose name is 'nil'. The symbol Mnil has the name 'nil' and, in general, represents
       false or no. When coerced to 'int', its value is zero. Mnil can't have any symbol
       property.
   MSymbol Mt
       Symbol whose name is 't'. The symbol Mt has the name 't' and, in general, represents true
       or yes.
   MSymbol Mstring
       Symbol whose name is 'string'. The symbol Mstring has the name 'string' and is used as an
       argument of the functions mchar_define_property(), etc.
   MSymbol Msymbol
       Symbol whose name is 'symbol'. The symbol Msymbol has the name 'symbol' and is used as an
       argument of the functions mchar_define_property(), etc.

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>.