/* ------- code automatically created by ../scripts/adms_build_object.pl -------------- */ #include #include inline void adms_list_free(p_list mylist) { if(!mylist) return; adms_slist_free(mylist->_item); adms_quark_free(mylist->_datatype); adms_global_increment_nblistdestroy(); free(mylist); } int adms_list_cmp (p_list mylist,p_list reflist) { int status; status = ( !!strcmp(adms_list_valueof_datatype (mylist)->_value,adms_list_valueof_datatype (reflist)->_value) ); return status; } p_list adms_list_new(p_quark mydatatype) { p_list mynewlist=(p_list) calloc(1,(size_t)sizeof(t_list)); adms_global_increment_nblistnew(); mynewlist->_adms._datatypename=adms_adms_enumeration_datatypename_list; mynewlist->_adms._seen=adms_adms_enumeration_seen_no; mynewlist->_datatype_isdefault=-1; adms_list_valueto_datatype (mynewlist,mydatatype); mynewlist->_datatype_isdefault=1; mynewlist->_item_isdefault=-1; return mynewlist; } p_adms adms_list_new_impl (p_adms arguments[]) { p_list mynewlist; p_quark mydatatype=adms_quark_new((char*)arguments[0]); mynewlist=adms_list_new(mydatatype); return adms_adms(mynewlist); } /*$1*/ char*adms_list_uid (p_list mynewlist) { char*myuid=NULL; char*myuid0=adms_quark_uid(mynewlist->_datatype); adms_strconcat(&myuid,myuid0); return myuid; } inline void adms_list_valueto_datatype (p_list mylist,p_quark _datatype) { if(mylist->_datatype_isdefault!=-1) adms_quark_free(mylist->_datatype); mylist->_datatype=_datatype; mylist->_datatype_isdefault=0; } inline void adms_list_valueto_item (p_list mylist,p_slist _item) { mylist->_item=_item; mylist->_item_isdefault=0; } void adms_list_list_item_prepend (p_list mymylist,p_adms myitem) { adms_slist_push(&adms_list_valueof_item(mymylist),adms_adms(myitem)); }