Esempio n. 1
0
void *
elixir_jsmap_find(Eina_List **list, jsval val, int type)
{
   Elixir_Jsmap *m;
   Eina_List *l;

   EINA_LIST_FOREACH(*list, l, m)
     if (m->val == val && m->type == type)
       {
	  *list = eina_list_promote_list(*list, l);
	  return m->data;
       }

   return NULL;
}
Esempio n. 2
0
EAPI void
efreet_icon_extension_add(const char *ext)
{
    Eina_List *l;

    EINA_SAFETY_ON_NULL_RETURN(ext);

    ext = eina_stringshare_add(ext);

    if ((l = eina_list_data_find_list(efreet_icon_extensions, ext)))
    {
        efreet_icon_extensions = eina_list_promote_list(efreet_icon_extensions, l);
        eina_stringshare_del(ext);
    }
    else
        efreet_icon_extensions = eina_list_prepend(efreet_icon_extensions, ext);
}
Esempio n. 3
0
int
main(int argc, char **argv)
{
   (void)argc;
   (void)argv;
   Eina_List *list = NULL, *r_list;
   Eina_List *l;
   Eina_Iterator *itr;
   void *list_data;

   eina_init();

   list = eina_list_append(list, "caprica");
   list = eina_list_append(list, "sagitarius");
   list = eina_list_append(list, "aerilon");
   list = eina_list_append(list, "gemenon");

   list = eina_list_promote_list(list, eina_list_nth_list(list, 2));
   list = eina_list_demote_list(list, eina_list_nth_list(list, 2));

   list = eina_list_remove(list, "sagitarius");

   l = eina_list_data_find_list(list, "aerilon");
   eina_list_data_set(l, "aquarius");

   printf("size: %d\n", eina_list_count(list));

   r_list = eina_list_reverse_clone(list);

   itr = eina_list_iterator_new(r_list);
   EINA_ITERATOR_FOREACH(itr, list_data)
     printf("%s\n", (char*)list_data);
   eina_iterator_free(itr);

   eina_list_free(list);
   eina_list_free(r_list);

   eina_shutdown();

   return 0;
}
Esempio n. 4
0
RenderThemeEfl::ThemePartCacheEntry* RenderThemeEfl::getThemePartFromCache(FormType type, const IntSize& size)
{
    void* data;
    Eina_List* node;
    Eina_List* reusableNode = 0;

    // Look for the item in the cache.
    EINA_LIST_FOREACH(m_partCache, node, data) {
        ThemePartCacheEntry* cachedEntry = static_cast<ThemePartCacheEntry*>(data);
        if (cachedEntry->size == size) {
            if (cachedEntry->type == type) {
                // Found the right item, move it to the head of the list
                // and return it.
                m_partCache = eina_list_promote_list(m_partCache, node);
                return cachedEntry;
            }
            // We reuse in priority the last item in the list that has
            // the requested size.
            reusableNode = node;
        }
    }