/*=*/
/***en
- @brief Push a property to a property list.
+ @brief Add a property at the beginning of a property list.
- The mplist_push () function pushes at the top of property list
- $PLIST a property whose key is $KEY and value is $VAL.
+ 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.
If the operation was successful, this function returns $PLIST.
Otherwise, it returns @c NULL. */
/***ja
- @brief ¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È¥×¥í¥Ñ¥Æ¥£¤ò¥×¥Ã¥·¥å¤¹¤ë.
+ @brief ¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È¤ÎÀèƬ¤Ë¥×¥í¥Ñ¥Æ¥£¤òÁÞÆþ¤¹¤ë.
- ´Ø¿ô mplist_push () ¤Ï¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È $PLIST ¤Î¾å¤Ë¤Ë¥¡¼¤¬ $KEY
- ¤ÇÃͤ¬ $VAL ¤Ç¤¢¤ë¥ª¥Ö¥¸¥§¥¯¥È¤ò¥×¥Ã¥·¥å¤¹¤ë¡£
+ ´Ø¿ô mplist_push () ¤Ï¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È $PLIST ¤ÎÀèƬ¤Ë¥¡¼¤¬ $KEY
+ ¤ÇÃͤ¬ $VAL ¤Ç¤¢¤ë¥ª¥Ö¥¸¥§¥¯¥È¤òÁÞÆþ¤¹¤ë¡£
$KEY ¤¬´ÉÍý¥¡¼¤Ê¤é¤Ð¡¢$VAL ¤Ï´ÉÍý²¼¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
¤³¤Î¾ì¹ç¡¢$VAL ¤Î»²¾È¿ô¤Ï 1 Áý¤ä¤µ¤ì¤ë¡£
MPLIST_NEW (pl);
MPLIST_KEY (pl) = MPLIST_KEY (plist);
MPLIST_VAL (pl) = MPLIST_VAL (plist);
- pl->next = plist->next;
+ MPLIST_NEXT (pl) = MPLIST_NEXT (plist);
plist->next = pl;
if (key->managing_key)
M17N_OBJECT_REF (val);
/*=*/
/***en
- @brief Pop a property from a property list.
+ @brief Remove a property at the beginning of a property list.
- The mplist_pop () function pops the topmost property from property
- list $PLIST. As a result, the key and value of $PLIST becomes
- those of the next of $PLIST.
+ 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.
@return
If the operation was successful, this function return the value of
the just popped property. Otherwise, it returns @c NULL. */
/***ja
- @brief ¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È¥×¥í¥Ñ¥Æ¥£¤ò¥Ý¥Ã¥×¤¹¤ë.
+ @brief ¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È¤ÎÀèƬ¤«¤é¥×¥í¥Ñ¥Æ¥£¤òºï½ü¤¹¤ë.
- ´Ø¿ô mplist_pop () ¤Ï¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È $PLIST ¤«¤éºÇ¾å°Ì¤Î¥×¥í¥Ñ¥Æ¥£
- ¤ò¥Ý¥Ã¥×¤¹¤ë¡£·ë²Ì¤È¤·¤Æ $PLIST ¤Î¥¡¼¤ÈÃÍ¤Ï $PLIST ¤Î¼¡¤Î¥¡¼¤ÈÃÍ
- ¤Ë¤Ê¤ë¡£
+ ´Ø¿ô mplist_pop () ¤Ï¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È $PLIST ¤ÎÀèƬ¤Î¥×¥í¥Ñ¥Æ¥£¤ò
+ ºï½ü¤¹¤ë¡£·ë²Ì¤È¤·¤Æ¡¢¸µ¤Î $PLIST ¤Î2ÈÖÌܤΥ¡¼¤ÈÃͤ¬¡¢¿·¤·¤¤
+ $PLIST ¤ÎÀèƬ¤Î¥¡¼¤ÈÃͤˤʤ롣
@return
- ½èÍý¤ËÀ®¸ù¤¹¤ì¤Ð¡¢¤³¤Î´Ø¿ô¤Ï¥Ý¥Ã¥×¤µ¤ì¤¿¥×¥í¥Ñ¥Æ¥£¤ÎÃͤòÊÖ¤¹¡£¤½¤¦
+ ½èÍý¤ËÀ®¸ù¤¹¤ì¤Ð¡¢¤³¤Î´Ø¿ô¤Ïºï½ü¤µ¤ì¤¿¥×¥í¥Ñ¥Æ¥£¤ÎÃͤòÊÖ¤¹¡£¤½¤¦
¤Ç¤Ê¤±¤ì¤Ð @c NULL ¤òÊÖ¤¹¡£ */
void *
if (MPLIST_TAIL_P (plist))
return NULL;
val = MPLIST_VAL (plist);
- next = plist->next;
+ next = MPLIST_NEXT (plist);
MPLIST_KEY (plist) = MPLIST_KEY (next);
MPLIST_VAL (plist) = MPLIST_VAL (next);
if (MPLIST_KEY (plist) != Mnil
&& MPLIST_KEY (plist)->managing_key
&& MPLIST_VAL (plist))
M17N_OBJECT_REF (MPLIST_VAL (plist));
- plist->next = next->next;
+ MPLIST_NEXT (plist) = MPLIST_NEXT (next);
if (plist->next)
M17N_OBJECT_REF (plist->next);
M17N_OBJECT_UNREF (next);
If $KEY is @c Mnil, it returns a sublist of $PLIST whose
first element is the last one of $PLIST. */
/***ja
- @brief ¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥ÈÃ椫¤é»ØÄê¤Î¥¡¼¤ò»ý¤Ä¥ª¥Ö¥¸¥§¥¯¥È¤òõ¤¹.
+ @brief ¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥ÈÃ椫¤é»ØÄê¤Î¥¡¼¤ò»ý¤Ä¥×¥í¥Ñ¥Æ¥£¤òõ¤¹.
´Ø¿ô mplist_find_by_key () ¤Ï¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È $PLIST ¤ò»Ï¤á¤«¤éõ
¤·¤Æ¡¢¥¡¼¤¬ $KEY ¤Ç¤¢¤ë¥×¥í¥Ñ¥Æ¥£¤ò¸«¤Ä¤±¤ë¡£¸«¤Ä¤«¤ì¤Ð¡¢¤½¤Î¥×¥í
property is found, a sublist of $PLIST whose first element is the
found one is returned. Otherwise, @c NULL is returned. */
/***ja
- @brief ¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥ÈÃ椫¤é»ØÄê¤ÎÃͤò»ý¤Ä¥ª¥Ö¥¸¥§¥¯¥È¤òõ¤¹.
+ @brief ¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥ÈÃ椫¤é»ØÄê¤ÎÃͤò»ý¤Ä¥×¥í¥Ñ¥Æ¥£¤òõ¤¹.
´Ø¿ô mplist_find_by_value () ¤Ï¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È $PLIST ¤ò»Ï¤á¤«¤é
õ¤·¤Æ¡¢Ãͤ¬ $VAL ¤Ç¤¢¤ë¥×¥í¥Ñ¥Æ¥£¤ò¸«¤Ä¤±¤ë¡£¸«¤Ä¤«¤ì¤Ð¡¢¤½¤Î¥×¥í
/***en
@brief Set the first property in a property list.
- The mplist_set () function sets the key and value of the first
+ 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.
property in property list $PLIST. If the length of $PLIST
is zero, it returns @c NULL. */
/***ja
- @brief ¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥ÈÃæ¤ÎºÇ½é¤Î¥×¥í¥Ñ¥Æ¥£¤Î¥¡¼¤òÊÖ¤¹.
+ @brief ¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥ÈÃæ¤ÎºÇ½é¤Î¥×¥í¥Ñ¥Æ¥£¤ÎÃͤòÊÖ¤¹.
´Ø¿ô mplist_value () ¤Ï¡¢¥×¥í¥Ñ¥Æ¥£¥ê¥¹¥È $PLIST Ãæ¤Î
ºÇ½é¤Î¥×¥í¥Ñ¥Æ¥£¤ÎÃͤòÊÖ¤¹¡£$PLIST ¤ÎŤµ¤¬ 0 ¤Ê¤é¤Ð¡¢ @c Mnil ¤ò