| Typedefs | |
| typedef MPlist | MPlist | 
| Type of property list objects. | |
| Functions | |
| MPlist * | mplist_deserialize (MText *mt) | 
| Generate a property list by deserializaing an M-text. | |
| MPlist * | mplist () | 
| Create a property list object. | |
| MPlist * | mplist_copy (MPlist *plist) | 
| Copy a property list. | |
| MPlist * | mplist_put (MPlist *plist, MSymbol key, void *val) | 
| Set the value of a property in a property list. | |
| void * | mplist_get (MPlist *plist, MSymbol key) | 
| Get the value of a property in a property list. | |
| MPlist * | mplist_add (MPlist *plist, MSymbol key, void *val) | 
| Add a property at the end of a property list. | |
| MPlist * | mplist_push (MPlist *plist, MSymbol key, void *val) | 
| Add a property at the beginning of a property list. | |
| void * | mplist_pop (MPlist *plist) | 
| Remove a property at the beginning of a property list. | |
| MPlist * | mplist_find_by_key (MPlist *plist, MSymbol key) | 
| Find a property of a specific key in a property list. | |
| MPlist * | mplist_find_by_value (MPlist *plist, void *val) | 
| Find a property of a specific value in a property list. | |
| MPlist * | mplist_next (MPlist *plist) | 
| Return the next sublist of a property list. | |
| MPlist * | mplist_set (MPlist *plist, MSymbol key, void *val) | 
| Set the first property in a property list. | |
| int | mplist_length (MPlist *plist) | 
| Return the length of a property list. | |
| MSymbol | mplist_key (MPlist *plist) | 
| Return the key of the first property in a property list. | |
| void * | mplist_value (MPlist *plist) | 
| Return the value of the first property in a property list. | |
| Variables | |
| MSymbol | Minteger | 
| Symbol whose name is "integer". | |
| MSymbol | Mplist | 
| Symbol whose name is "plist". | |
| MSymbol | Mtext | 
| Symbol whose name is "mtext". | |
(void *).If the key of a property is a managing key, its value is a managed object. A property list itself is a managed objects.
| 
 | 
| The type MPlist is for a property list object. Its internal structure is concealed from application programs. | 
| 
 | 
| The mplist_deserialize() function parses M-text mt and returns a property list. The syntax of mt is as follows. MT ::= '(' ELEMENT * ')' ELEMENT ::= SYMBOL | INTEGER | M-TEXT | PLIST SYMBOL ::= ascii-character-sequence INTEGER ::= '-' ? [ '0' | .. | '9' ]+ | '0x' [ '0' | .. | '9' | 'A' | .. | 'F' | 'a' | .. | 'f' ]+ M-TEXT ::= '"' character-sequence '"' 
Each alternatives of  
In an ascii-character-sequence, a backslush (\) is used as the escape character, which means that, for instance,  | 
| 
 | 
| The mplist() function returns a newly created property list object of length zero. 
 
 
 | 
| 
 | 
| The mplist_copy() function copies property list plist. In the copy, the values are the same as those of plist. 
 
 
 | 
| 
 | ||||||||||||||||
| The mplist_put() function searches property list plist from the beginning for a property whose key is key. If such a property is found, its value is changed to value. Otherwise, a new property whose key is key and value is value is appended at the end of plist. See the documentation of mplist_add() for the restriction on key and val. 
If key is a managing key, val must be a managed object. In this case, the reference count of the old value, if not  
 
 | 
| 
 | ||||||||||||
| 
The mplist_get() function searches property list plist from the beginning for a property whose key is key. If such a property is found, a pointer to its value is returned as the type of  
When  
 
 | 
| 
 | ||||||||||||||||
| 
The mplist_add() function appends at the end of property list plist a property whose key is key and value is val. key can be any symbol other than  If key is a managing key, val must be a managed object. In this case, the reference count of val is incremented by one. 
 
 | 
| 
 | ||||||||||||||||
| The mplist_push() function inserts at the beginning of property list plist a property whose key is key and value is val. If key is a managing key, val must be a managed object. In this case, the reference count of val is incremented by one. 
 
 | 
| 
 | 
| The mplist_pop() function removes a property at the beginning of property list plist. As a result, the second key and value of the original plist become the first of those of the new plist. 
 
 | 
| 
 | ||||||||||||
| 
The mplist_find_by_key() function searches property list plist from the beginning for a property whose key is key. If such a property is found, a sublist of plist whose first element is the found one is returned. Otherwise,  
If key is  | 
| 
 | ||||||||||||
| 
The mplist_find_by_value() function searches property list plist from the beginning for a property whose value is val. If such a property is found, a sublist of plist whose first element is the found one is returned. Otherwise,  | 
| 
 | 
| 
The mplist_next() function returns a pointer to the sublist of property list plist, which begins at the second element in plist. If the length of plist is zero, it returns  | 
| 
 | ||||||||||||||||
| The mplist_set() function sets the key and the value of the first property in property list plist to key and value, respectively. See the documentation of mplist_add() for the restriction on key and val. 
 
 | 
| 
 | 
| The mplist_length() function returns the number of properties in property list plist. | 
| 
 | 
| 
The mplist_key() function returns the key of the first property in property list plist. If the length of plist is zero, it returns  | 
| 
 | 
| 
The mplist_value() function returns the value of the first property in property list plist. If the length of plist is zero, it returns  | 
| 
 | 
| 
The symbol  | 
| 
 | 
| 
The symbol  | 
| 
 | 
| 
The symbol  | 
 mule-aist@m17n.org
mule-aist@m17n.org