On Mon, 16 Aug 2010, Carsten Haitzler (The Rasterman) wrote:

On Mon, 16 Aug 2010 14:27:33 +0800 Brian Wang <[email protected]> said:

wish i could say yes to the patch.. but i actually changed it from eina-1 to
eina ... just check eina >= 1.0.0 :) consistency with the rest of efl :)

but then, no possible parallal detection of different major versions. PKG_CHECK_MODULES(***, eina) will only detect the last major version. But what if someone has to use the old one ?

Vincent

That was scary... A little svn up broke the compilation...
eina-0 to eina-1 patch for the libraries I use is attached.

It's exciting to see the recent movements toward EFL 1.0 release.
With the _heated_ discussions about the coding styles and release
plans, EFL is only getting better and better.
Nice work to every dev!


brian
very satisified EFL customer :-)

On Mon, Aug 16, 2010 at 1:40 PM, Enlightenment SVN
<[email protected]> wrote:
Log:
 well got to start somewhere. eina 1.0.0 alpha readied. need to go over
 code formatting still (headers specifically). bring doc building
 in-line with other efl libs. README is useful now. Changelog waiting
 to be filled in for 1.0.0


Author:       raster
Date:         2010-08-15 22:40:50 -0700 (Sun, 15 Aug 2010)
New Revision: 51154

Added:
 trunk/eina/eina-1.pc.in
Removed:
 trunk/eina/eina-0.pc.in
Modified:
 trunk/eina/ChangeLog trunk/eina/Makefile.am trunk/eina/README
trunk/eina/configure.ac trunk/eina/doc/Makefile.am
trunk/eina/src/include/eina_accessor.h trunk/eina/src/include/eina_array.h
trunk/eina/src/include/eina_benchmark.h
trunk/eina/src/include/eina_binshare.h
trunk/eina/src/include/eina_convert.h trunk/eina/src/include/eina_counter.h
trunk/eina/src/include/eina_error.h trunk/eina/src/include/eina_file.h
trunk/eina/src/include/eina_hash.h trunk/eina/src/include/eina_main.h
trunk/eina/src/lib/Makefile.am

Modified: trunk/eina/ChangeLog
===================================================================
--- trunk/eina/ChangeLog        2010-08-16 04:44:45 UTC (rev 51153)
+++ trunk/eina/ChangeLog        2010-08-16 05:40:50 UTC (rev 51154)
@@ -0,0 +1,4 @@
+20YY-MM-2DD  NAME OF RELEASER
+
+       MAJOR.MINOR.MICRO release
+

Modified: trunk/eina/Makefile.am
===================================================================
--- trunk/eina/Makefile.am      2010-08-16 04:44:45 UTC (rev 51153)
+++ trunk/eina/Makefile.am      2010-08-16 05:40:50 UTC (rev 51154)
@@ -19,16 +19,15 @@
 missing

 pkgconfigdir = $(libdir)/pkgconfig
-pkgconfig_DATA = eina-0.pc
+pkgconfig_DATA = eina-1.pc

 EXTRA_DIST = \
 AUTHORS \
 COPYING \
-OLD-COPYING.PLAIN \
 README \
 $(pkgconfig_DATA) \
 autogen.sh \
-eina-0.pc.in \
+eina-1.pc.in \
 eina.spec \
 eina.spec.in \
 m4/ac_attribute.m4 \

Modified: trunk/eina/README
===================================================================
--- trunk/eina/README   2010-08-16 04:44:45 UTC (rev 51153)
+++ trunk/eina/README   2010-08-16 05:40:50 UTC (rev 51154)
@@ -1,2 +1,47 @@
-Data types library (List, hash, etc)
+Eina 1.0.0 ALPHA

+******************************************************************************
+
+ FOR ANY ISSUES PLEASE EMAIL:
+ [email protected]
+
+******************************************************************************
+
+Requirements:
+-------------
+Must have:
+ libc
+ libm
+ (For windows you also need: evil)
+
+Eina is a library providing data structure utilities for EFL that are meant
+to be lean, efficient and tailored to EFL's needs. This saves each
+library implementing its own custom datatype handling and duplicating
+the code. Some of the datatypes handles are:
+  Arrays (variable sized)
+  Hash tables
+  Inlined linked lists
+  Linked lists
+  Matricies
+  Quadtrees
+  Red/black trees
+  Strinbuffers (expandable string bufers)
+
+In addition Eina supports shared string token hashes with Stringshare
+and Unistringshare (standard ascii/utf8 strings and full unicode
+strings). It has a Trash pointer collector for deferring freeing until
+work is complete on a dataset, Unicode string wrapping and handling,
+UTF8 string parsing, 2D tile structure handling and rectangle
+utilities, module loading wrapper, Memory pools for faster allocation
+and less fragmentation of the heap, Output logging and selective
+aborting on critical enough states, fixed point math functions, CPU
+feature detection (like MMX, SSE, VFP, NEON etc.), Counters, binary
+token sharing and more.
+
+------------------------------------------------------------------------------
+COMPILING AND INSTALLING:
+
+  ./configure
+  make
+(do this as root unless you are installing in your users directories):
+  make install

Modified: trunk/eina/configure.ac
===================================================================
--- trunk/eina/configure.ac     2010-08-16 04:44:45 UTC (rev 51153)
+++ trunk/eina/configure.ac     2010-08-16 05:40:50 UTC (rev 51154)
@@ -1,25 +1,24 @@
 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
-m4_define([v_maj], [0])
-m4_define([v_min], [9])
-m4_define([v_mic], [9])
+m4_define([v_maj], [1])
+m4_define([v_min], [0])
+m4_define([v_mic], [0])
 m4_define([v_rev], m4_esyscmd([(svnversion "${SVN_REPO_PATH:-.}" | grep -v
export || echo 0) | awk -F : '{printf("%s\n", $1);}' | tr -d ' :MSP\n']))
m4_if(v_rev, [0], [m4_define([v_rev], m4_esyscmd([git log 2> /dev/null |
(grep -m1 git-svn-id || echo 0) | sed -e 's/....@\([0-9]*\).*/\1/' | tr -d
'\n']))]) ##--   When released, remove the dnl on the below line -dnl
m4_undefine([v_rev]) +m4_undefine([v_rev]) ##--   When doing snapshots -
change soname. remove dnl on below line -m4_define([relname],
[ver-pre-svn-07]) -m4_define([v_rel], [-release relname])
+dnl m4_define([relname], [ver-pre-svn-07])
+dnl m4_define([v_rel], [-release relname])
 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
-m4_ifdef([v_rev], [m4_define([v_ver], [v_maj.v_min.v_mic.v_rev])],
-[m4_define([v_ver], [v_maj.v_min.v_mic])])
+m4_ifdef([v_rev], [m4_define([v_ver], [v_maj.v_min.v_mic.v_rev])],
[m4_define([v_ver], [v_maj.v_min.v_mic])]) m4_define([lt_rev], m4_eval
(v_maj + v_min)) m4_define([lt_cur], v_mic)
 m4_define([lt_age], v_min)
 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##

-AC_INIT([eina], [v_ver], [[email protected]])
+AC_INIT([eina], [v_ver-alpha], [[email protected]])
 AC_PREREQ([2.59])
 AC_CONFIG_SRCDIR([configure.ac])
 AC_CONFIG_MACRO_DIR([m4])
@@ -556,7 +555,7 @@

 AC_CONFIG_FILES([
 Makefile
-eina-0.pc
+eina-1.pc
 eina.spec
 doc/Makefile
 src/Makefile

Modified: trunk/eina/doc/Makefile.am
===================================================================
--- trunk/eina/doc/Makefile.am  2010-08-16 04:44:45 UTC (rev 51153)
+++ trunk/eina/doc/Makefile.am  2010-08-16 05:40:50 UTC (rev 51154)
@@ -1,14 +1,26 @@
+MAINTAINERCLEANFILES = Makefile.in

-MAINTAINERCLEANFILES = Makefile.in
-
 .PHONY: doc

+PACKAGE_DOCNAME = $(PACKAGE_TARNAME)-$(PACKAGE_VERSION)-doc
+
 if EFL_BUILD_DOC

+doc-clean:
+       rm -rf html/ latex/ man/ xml/ $(PACKAGE_DOCNAME).tar*
+
 doc: all
-       rm -rf html/ latex/ man/
       $(efl_doxygen)
       cp img/* html/
+       rm -rf $(PACKAGE_DOCNAME).tar*
+       mkdir -p $(PACKAGE_DOCNAME)/doc
+       cp -R html/ latex/ man/ $(PACKAGE_DOCNAME)/doc
+       tar cf $(PACKAGE_DOCNAME).tar $(PACKAGE_DOCNAME)/
+       bzip2 -9 $(PACKAGE_DOCNAME).tar
+       rm -rf $(PACKAGE_DOCNAME)/
+       mv $(PACKAGE_DOCNAME).tar.bz2 $(top_srcdir)
+
+clean-local: doc-clean

 else

@@ -17,7 +29,4 @@

 endif

-clean-local:
-       @rm -rf html/ latex/ man/
-
 EXTRA_DIST = Doxyfile $(wildcard img/*.*) e.css head.html foot.html

Modified: trunk/eina/src/include/eina_accessor.h
===================================================================
--- trunk/eina/src/include/eina_accessor.h      2010-08-16 04:44:45 UTC
(rev 51153) +++ trunk/eina/src/include/eina_accessor.h      2010-08-16
05:40:50 UTC (rev 51154) @@ -68,18 +68,9 @@
 #define FUNC_ACCESSOR_LOCK(Function) ((Eina_Accessor_Lock_Callback)
Function)

 EAPI void      eina_accessor_free(Eina_Accessor *accessor) EINA_ARG_NONNULL
(1); -
-EAPI Eina_Bool eina_accessor_data_get(Eina_Accessor *accessor,
-                                      unsigned int position,
-                                      void **data) EINA_ARG_NONNULL(1);
+EAPI Eina_Bool eina_accessor_data_get(Eina_Accessor *accessor, unsigned
int position, void **data) EINA_ARG_NONNULL(1); EAPI void *
 eina_accessor_container_get(Eina_Accessor *accessor) EINA_ARG_NONNULL(1)
EINA_PURE; - -EAPI void      eina_accessor_over(Eina_Accessor *accessor,
-                                  Eina_Each_Cb cb,
-                                  unsigned int start,
-                                  unsigned int end,
-                                  const void *fdata) EINA_ARG_NONNULL(1,
2); -
+EAPI void      eina_accessor_over(Eina_Accessor *accessor, Eina_Each_Cb
cb, unsigned int start, unsigned int end, const void *fdata)
EINA_ARG_NONNULL(1, 2); EAPI Eina_Bool eina_accessor_lock(Eina_Accessor
*accessor) EINA_ARG_NONNULL(1); EAPI Eina_Bool eina_accessor_unlock
(Eina_Accessor *accessor) EINA_ARG_NONNULL(1);

@@ -132,18 +123,10 @@
 *    rather in the accessors implementations to keep them as simple
 *    and fast as possible.
 */
-#define EINA_ACCESSOR_FOREACH(accessor, counter, data) for ((counter) = 0;
\
-
 eina_accessor_data_get(( \
-
           accessor), \
-
        ( \
-
           counter), \
-
        ( \
-
           void \
-
           * \
-
           *) \
-
        &( \
-
           data)); \
-                                                            (counter)++)
+#define EINA_ACCESSOR_FOREACH(accessor, counter, data) \
+   for ((counter) = 0; \
+        eina_accessor_data_get((accessor), (counter), (void **)&(data)); \
+        (counter)++)

 /**
 * @}

Modified: trunk/eina/src/include/eina_array.h
===================================================================
--- trunk/eina/src/include/eina_array.h 2010-08-16 04:44:45 UTC (rev 51153)
+++ trunk/eina/src/include/eina_array.h 2010-08-16 05:40:50 UTC (rev 51154)
@@ -137,10 +137,10 @@
 *   free(item);
 * @endcode
 */
-#define EINA_ARRAY_ITER_NEXT(array, index, item, iterator)              \
+#define EINA_ARRAY_ITER_NEXT(array, index, item, iterator) \
   for (index = 0, iterator = (array)->data; \
        (index < eina_array_count_get(array)) && ((item = *((iterator)+
+))); \
-                                                   ++(index))
+        ++(index))

 #include "eina_inline_array.x"


Modified: trunk/eina/src/include/eina_benchmark.h
===================================================================
--- trunk/eina/src/include/eina_benchmark.h     2010-08-16 04:44:45 UTC
(rev 51153) +++ trunk/eina/src/include/eina_benchmark.h     2010-08-16
05:40:50 UTC (rev 51154) @@ -55,18 +55,11 @@
 */
 #define EINA_BENCHMARK(function) ((Eina_Benchmark_Specimens)function)

-EAPI Eina_Benchmark *eina_benchmark_new(const char *name, const char *run);
-EAPI void            eina_benchmark_free(Eina_Benchmark *bench);
+EAPI Eina_Benchmark * eina_benchmark_new(const char *name, const char
*run); +EAPI void             eina_benchmark_free(Eina_Benchmark *bench);
+EAPI Eina_Bool        eina_benchmark_register(Eina_Benchmark *bench, const
char *name, Eina_Benchmark_Specimens bench_cb, int count_start, int
count_end, int count_set); +EAPI Eina_Array *     eina_benchmark_run
(Eina_Benchmark *bench);

-EAPI Eina_Bool       eina_benchmark_register(Eina_Benchmark *bench,
-                                             const char *name,
-                                             Eina_Benchmark_Specimens
bench_cb,
-                                             int count_start,
-                                             int count_end,
-                                             int count_set);
-
-EAPI Eina_Array *eina_benchmark_run(Eina_Benchmark *bench);
-
 /**
 * @}
 */

Modified: trunk/eina/src/include/eina_binshare.h
===================================================================
--- trunk/eina/src/include/eina_binshare.h      2010-08-16 04:44:45 UTC
(rev 51153) +++ trunk/eina/src/include/eina_binshare.h      2010-08-16
05:40:50 UTC (rev 51154) @@ -67,8 +67,7 @@

 EAPI Eina_Bool   eina_binshare_init(void);
 EAPI Eina_Bool   eina_binshare_shutdown(void);
-EAPI const void *eina_binshare_add_length(const void *obj,
-                                          unsigned int olen) EINA_PURE
EINA_WARN_UNUSED_RESULT; +EAPI const void *eina_binshare_add_length(const
void *obj, unsigned int olen) EINA_PURE EINA_WARN_UNUSED_RESULT; EAPI const
void *eina_binshare_ref(const void *obj); EAPI void        eina_binshare_del
(const void *obj); EAPI int         eina_binshare_length(const void *obj)
EINA_WARN_UNUSED_RESULT;

Modified: trunk/eina/src/include/eina_convert.h
===================================================================
--- trunk/eina/src/include/eina_convert.h       2010-08-16 04:44:45 UTC
(rev 51153) +++ trunk/eina/src/include/eina_convert.h       2010-08-16
05:40:50 UTC (rev 51154) @@ -56,17 +56,11 @@

 EAPI int       eina_convert_itoa(int n, char *s)  EINA_ARG_NONNULL(2);
 EAPI int       eina_convert_xtoa(unsigned int n, char *s) EINA_ARG_NONNULL
(2); -
 EAPI int       eina_convert_dtoa(double d, char *des) EINA_ARG_NONNULL(2);
-EAPI Eina_Bool eina_convert_atod(const char *src,
-                                 int length,
-                                 long long *m,
-                                 long *e)  EINA_ARG_NONNULL(1,3,4);
+EAPI Eina_Bool eina_convert_atod(const char *src, int length, long long
*m, long *e) EINA_ARG_NONNULL(1,3,4); +EAPI int       eina_convert_fptoa
(Eina_F32p32 fp,  char *des) EINA_ARG_NONNULL(2); +EAPI Eina_Bool
eina_convert_atofp(const char *src, int length, Eina_F32p32 *fp)
EINA_ARG_NONNULL(1,3);

-EAPI int       eina_convert_fptoa(Eina_F32p32 fp, char *des)
EINA_ARG_NONNULL(2); -EAPI Eina_Bool eina_convert_atofp(const char *src,
int length,
-                                  Eina_F32p32 *fp)  EINA_ARG_NONNULL(1,3);
-
 /**
 * @}
 */

Modified: trunk/eina/src/include/eina_counter.h
===================================================================
--- trunk/eina/src/include/eina_counter.h       2010-08-16 04:44:45 UTC
(rev 51153) +++ trunk/eina/src/include/eina_counter.h       2010-08-16
05:40:50 UTC (rev 51154) @@ -40,12 +40,11 @@
 typedef struct _Eina_Counter Eina_Counter;

 EAPI Eina_Counter * eina_counter_new( const char *name)
EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); -EAPI void eina_counter_free
( Eina_Counter *counter) EINA_ARG_NONNULL(1); +EAPI void
eina_counter_free( Eina_Counter *counter) EINA_ARG_NONNULL(1); +EAPI void
        eina_counter_start( Eina_Counter *counter) EINA_ARG_NONNULL(1);
+EAPI void           eina_counter_stop( Eina_Counter *counter, int
specimen) EINA_ARG_NONNULL(1); +EAPI char *         eina_counter_dump
( Eina_Counter *counter) EINA_ARG_NONNULL(1);

-EAPI void eina_counter_start( Eina_Counter *counter) EINA_ARG_NONNULL(1);
-EAPI void eina_counter_stop( Eina_Counter *counter, int specimen)
EINA_ARG_NONNULL(1); -EAPI char * eina_counter_dump( Eina_Counter *counter)
EINA_ARG_NONNULL(1); -
 /**
 * @}
 */

Modified: trunk/eina/src/include/eina_error.h
===================================================================
--- trunk/eina/src/include/eina_error.h 2010-08-16 04:44:45 UTC (rev 51153)
+++ trunk/eina/src/include/eina_error.h 2010-08-16 05:40:50 UTC (rev 51154)
@@ -49,8 +49,7 @@

 EAPI Eina_Error  eina_error_msg_register(const char *msg) EINA_ARG_NONNULL
(1) EINA_WARN_UNUSED_RESULT; EAPI Eina_Error  eina_error_msg_static_register
(const char *msg) EINA_ARG_NONNULL(1) EINA_WARN_UNUSED_RESULT; -EAPI
Eina_Bool   eina_error_msg_modify(Eina_Error error,
-                                       const char *msg) EINA_ARG_NONNULL
(1, 2); +EAPI Eina_Bool   eina_error_msg_modify(Eina_Error error, const
char *msg) EINA_ARG_NONNULL(1, 2); EAPI Eina_Error  eina_error_get(void);
 EAPI void        eina_error_set(Eina_Error err);
 EAPI const char *eina_error_msg_get(Eina_Error error) EINA_PURE;

Modified: trunk/eina/src/include/eina_file.h
===================================================================
--- trunk/eina/src/include/eina_file.h  2010-08-16 04:44:45 UTC (rev 51153)
+++ trunk/eina/src/include/eina_file.h  2010-08-16 05:40:50 UTC (rev 51154)
@@ -44,8 +44,7 @@
 * @typedef Eina_File_Dir_List_Cb
 * Type for a callback.
 */
-typedef void (*Eina_File_Dir_List_Cb)(const char *name, const char *path,
-                                      void *data);
+typedef void (*Eina_File_Dir_List_Cb)(const char *name, const char *path,
void *data);

 /**
 * @def EINA_FILE_DIR_LIST_CB
@@ -57,12 +56,9 @@
 */
 #define EINA_FILE_DIR_LIST_CB(function) ((Eina_File_Dir_List_Cb)function)

-EAPI Eina_Bool
-eina_file_dir_list(const char *dir, Eina_Bool recursive,
Eina_File_Dir_List_Cb cb, void *data) EINA_ARG_NONNULL(1, 3); -EAPI
Eina_Array * -eina_file_split(char *path) EINA_WARN_UNUSED_RESULT
EINA_ARG_NONNULL(1) EINA_MALLOC; -EAPI Eina_Iterator *
-eina_file_ls(const char *dir) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1)
EINA_MALLOC; +EAPI Eina_Bool       eina_file_dir_list(const char *dir,
Eina_Bool recursive, Eina_File_Dir_List_Cb cb, void *data) EINA_ARG_NONNULL
(1, 3); +EAPI Eina_Array *    eina_file_split(char *path)
EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_MALLOC; +EAPI
Eina_Iterator * eina_file_ls(const char *dir) EINA_WARN_UNUSED_RESULT
EINA_ARG_NONNULL(1) EINA_MALLOC;


 typedef struct _Eina_File_Direct_Info Eina_File_Direct_Info;
@@ -75,7 +71,7 @@
   const struct dirent *dirent;
 };

-EAPI Eina_Iterator *eina_file_direct_ls(const char *dir)
EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_MALLOC; +EAPI
Eina_Iterator * eina_file_direct_ls(const char *dir)
EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_MALLOC;

 /**
 * @}

Modified: trunk/eina/src/include/eina_hash.h
===================================================================
--- trunk/eina/src/include/eina_hash.h  2010-08-16 04:44:45 UTC (rev 51153)
+++ trunk/eina/src/include/eina_hash.h  2010-08-16 05:40:50 UTC (rev 51154)
@@ -51,7 +51,6 @@
 {
   const void *key;
   void *data;
-
   unsigned int key_length;
 };

@@ -61,67 +60,54 @@
 #define EINA_KEY_CMP(Function) ((Eina_Key_Cmp)Function)
 typedef int (*Eina_Key_Hash)(const void *key, int key_length);
 #define EINA_KEY_HASH(Function) ((Eina_Key_Hash)Function)
-
-EAPI Eina_Hash *eina_hash_new(Eina_Key_Length key_length_cb, Eina_Key_Cmp
key_cmp_cb, Eina_Key_Hash key_hash_cb, Eina_Free_Cb data_free_cb, int
buckets_power_size) EINA_MALLOC EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(2,
3); -EAPI Eina_Hash *eina_hash_string_djb2_new(Eina_Free_Cb data_free_cb);
-EAPI Eina_Hash *eina_hash_string_superfast_new(Eina_Free_Cb data_free_cb);
-EAPI Eina_Hash *eina_hash_string_small_new(Eina_Free_Cb data_free_cb);
-EAPI Eina_Hash *eina_hash_int32_new(Eina_Free_Cb data_free_cb); -EAPI
Eina_Hash *eina_hash_int64_new(Eina_Free_Cb data_free_cb); -EAPI Eina_Hash
*eina_hash_pointer_new(Eina_Free_Cb data_free_cb); -EAPI Eina_Hash
*eina_hash_stringshared_new(Eina_Free_Cb data_free_cb); - -EAPI Eina_Hash
*eina_hash_threadsafe_new(Eina_Key_Length key_length_cb, Eina_Key_Cmp
key_cmp_cb, Eina_Key_Hash key_hash_cb, Eina_Free_Cb data_free_cb, int
buckets_power_size) EINA_MALLOC EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(2,
3); -EAPI Eina_Hash *eina_hash_threadsafe_string_djb2_new(Eina_Free_Cb
data_free_cb); -EAPI Eina_Hash *eina_hash_threadsafe_string_superfast_new
(Eina_Free_Cb data_free_cb); -EAPI Eina_Hash
*eina_hash_threadsafe_string_small_new(Eina_Free_Cb data_free_cb); -EAPI
Eina_Hash *eina_hash_threadsafe_int32_new(Eina_Free_Cb data_free_cb); -EAPI
Eina_Hash *eina_hash_threadsafe_int64_new(Eina_Free_Cb data_free_cb); -EAPI
Eina_Hash *eina_hash_threadsafe_pointer_new(Eina_Free_Cb data_free_cb);
-EAPI Eina_Hash *eina_hash_threadsafe_stringshared_new(Eina_Free_Cb
data_free_cb); - -EAPI Eina_Bool eina_hash_add(Eina_Hash *hash, const void
*key, const void *data) EINA_ARG_NONNULL(1, 2, 3); -EAPI Eina_Bool
eina_hash_direct_add(Eina_Hash *hash, const void *key, const void *data)
EINA_ARG_NONNULL(1, 2, 3); -EAPI Eina_Bool eina_hash_del(Eina_Hash *hash,
const void *key, const void *data) EINA_ARG_NONNULL(1); -EAPI void
*eina_hash_find(const Eina_Hash *hash, const void *key) EINA_ARG_NONNULL(1,
2); -EAPI void *eina_hash_modify(Eina_Hash *hash, const void *key, const
void *data) EINA_ARG_NONNULL(1, 2, 3); -EAPI void *eina_hash_set(Eina_Hash
*hash, const void *key, const void *data) EINA_ARG_NONNULL(1, 2, 3); -EAPI
Eina_Bool eina_hash_move(Eina_Hash *hash, const void *old_key, const void
*new_key) EINA_ARG_NONNULL(1, 2, 3); - -EAPI void eina_hash_free(Eina_Hash
*hash) EINA_ARG_NONNULL(1); -EAPI void eina_hash_free_buckets(Eina_Hash
*hash) EINA_ARG_NONNULL(1); -EAPI int eina_hash_population(const Eina_Hash
*hash) EINA_ARG_NONNULL(1); - -EAPI Eina_Bool eina_hash_add_by_hash
(Eina_Hash *hash, const void *key, int key_length, int key_hash, const void
*data) EINA_ARG_NONNULL(1, 2, 5); -EAPI Eina_Bool
eina_hash_direct_add_by_hash(Eina_Hash *hash, const void *key, int
key_length, int key_hash, const void *data) EINA_ARG_NONNULL(1, 2, 5); -
-EAPI Eina_Bool eina_hash_del_by_key_hash(Eina_Hash *hash, const void *key,
int key_length, int key_hash) EINA_ARG_NONNULL(1, 2); - -EAPI Eina_Bool
eina_hash_del_by_key(Eina_Hash *hash, const void *key) EINA_ARG_NONNULL(1,
2); -EAPI Eina_Bool eina_hash_del_by_data(Eina_Hash *hash, const void
*data) EINA_ARG_NONNULL(1, 2); - -EAPI Eina_Bool eina_hash_del_by_hash
(Eina_Hash *hash, const void *key, int key_length, int key_hash, const void
*data) EINA_ARG_NONNULL(1); -EAPI void *eina_hash_find_by_hash(const
Eina_Hash *hash, const void *key, int key_length, int key_hash)
EINA_ARG_NONNULL(1, 2); -EAPI void *eina_hash_modify_by_hash(Eina_Hash
*hash, const void *key, int key_length, int key_hash, const void *data)
EINA_ARG_NONNULL(1, 2, 5); - -EAPI Eina_Iterator *eina_hash_iterator_key_new
(const Eina_Hash *hash) EINA_MALLOC EINA_ARG_NONNULL(1)
EINA_WARN_UNUSED_RESULT; -EAPI Eina_Iterator *eina_hash_iterator_data_new
(const Eina_Hash *hash) EINA_MALLOC EINA_ARG_NONNULL(1)
EINA_WARN_UNUSED_RESULT; -EAPI Eina_Iterator *eina_hash_iterator_tuple_new
(const Eina_Hash *hash) EINA_MALLOC EINA_ARG_NONNULL(1)
EINA_WARN_UNUSED_RESULT; - - typedef Eina_Bool (*Eina_Hash_Foreach)(const
Eina_Hash *hash, const void *key, void *data, void *fdata); -EAPI void
eina_hash_foreach(const Eina_Hash *hash, Eina_Hash_Foreach cb, const void
*fdata) EINA_ARG_NONNULL(1, 2);

+EAPI Eina_Hash *     eina_hash_new(Eina_Key_Length key_length_cb,
Eina_Key_Cmp key_cmp_cb, Eina_Key_Hash key_hash_cb, Eina_Free_Cb
data_free_cb, int buckets_power_size) EINA_MALLOC EINA_WARN_UNUSED_RESULT
EINA_ARG_NONNULL(2, 3); +EAPI Eina_Hash *     eina_hash_string_djb2_new
(Eina_Free_Cb data_free_cb); +EAPI Eina_Hash *
eina_hash_string_superfast_new(Eina_Free_Cb data_free_cb); +EAPI Eina_Hash
*     eina_hash_string_small_new(Eina_Free_Cb data_free_cb); +EAPI
Eina_Hash *     eina_hash_int32_new(Eina_Free_Cb data_free_cb); +EAPI
Eina_Hash *     eina_hash_int64_new(Eina_Free_Cb data_free_cb); +EAPI
Eina_Hash *     eina_hash_pointer_new(Eina_Free_Cb data_free_cb); +EAPI
Eina_Hash *     eina_hash_stringshared_new(Eina_Free_Cb data_free_cb);
+EAPI Eina_Hash *     eina_hash_threadsafe_new(Eina_Key_Length
key_length_cb, Eina_Key_Cmp key_cmp_cb, Eina_Key_Hash key_hash_cb,
Eina_Free_Cb data_free_cb, int buckets_power_size) EINA_MALLOC
EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(2, 3); +EAPI Eina_Hash *
eina_hash_threadsafe_string_djb2_new(Eina_Free_Cb data_free_cb); +EAPI
Eina_Hash *     eina_hash_threadsafe_string_superfast_new(Eina_Free_Cb
data_free_cb); +EAPI Eina_Hash *     eina_hash_threadsafe_string_small_new
(Eina_Free_Cb data_free_cb); +EAPI Eina_Hash *
eina_hash_threadsafe_int32_new(Eina_Free_Cb data_free_cb); +EAPI Eina_Hash
*     eina_hash_threadsafe_int64_new(Eina_Free_Cb data_free_cb); +EAPI
Eina_Hash *     eina_hash_threadsafe_pointer_new(Eina_Free_Cb
data_free_cb); +EAPI Eina_Hash *     eina_hash_threadsafe_stringshared_new
(Eina_Free_Cb data_free_cb); +EAPI Eina_Bool       eina_hash_add(Eina_Hash
*hash, const void *key, const void *data) EINA_ARG_NONNULL(1, 2, 3); +EAPI
Eina_Bool       eina_hash_direct_add(Eina_Hash *hash, const void *key,
const void *data) EINA_ARG_NONNULL(1, 2, 3); +EAPI Eina_Bool
eina_hash_del(Eina_Hash *hash, const void *key, const void *data)
EINA_ARG_NONNULL(1); +EAPI void *          eina_hash_find(const Eina_Hash
*hash, const void *key) EINA_ARG_NONNULL(1, 2); +EAPI void *
 eina_hash_modify(Eina_Hash *hash, const void *key, const void *data)
EINA_ARG_NONNULL(1, 2, 3); +EAPI void *          eina_hash_set(Eina_Hash
*hash, const void *key, const void *data) EINA_ARG_NONNULL(1, 2, 3); +EAPI
Eina_Bool       eina_hash_move(Eina_Hash *hash, const void *old_key, const
void *new_key) EINA_ARG_NONNULL(1, 2, 3); +EAPI void
 eina_hash_free(Eina_Hash *hash) EINA_ARG_NONNULL(1); +EAPI void
 eina_hash_free_buckets(Eina_Hash *hash) EINA_ARG_NONNULL(1); +EAPI int
        eina_hash_population(const Eina_Hash *hash) EINA_ARG_NONNULL(1);
+EAPI Eina_Bool       eina_hash_add_by_hash(Eina_Hash *hash, const void
*key, int key_length, int key_hash, const void *data) EINA_ARG_NONNULL(1,
2, 5); +EAPI Eina_Bool       eina_hash_direct_add_by_hash(Eina_Hash *hash,
const void *key, int key_length, int key_hash, const void *data)
EINA_ARG_NONNULL(1, 2, 5); +EAPI Eina_Bool       eina_hash_del_by_key_hash
(Eina_Hash *hash, const void *key, int key_length, int key_hash)
EINA_ARG_NONNULL(1, 2); +EAPI Eina_Bool       eina_hash_del_by_key
(Eina_Hash *hash, const void *key) EINA_ARG_NONNULL(1, 2); +EAPI Eina_Bool
      eina_hash_del_by_data(Eina_Hash *hash, const void *data)
EINA_ARG_NONNULL(1, 2); +EAPI Eina_Bool       eina_hash_del_by_hash
(Eina_Hash *hash, const void *key, int key_length, int key_hash, const void
*data) EINA_ARG_NONNULL(1); +EAPI void *          eina_hash_find_by_hash
(const Eina_Hash *hash, const void *key, int key_length, int key_hash)
EINA_ARG_NONNULL(1, 2); +EAPI void *          eina_hash_modify_by_hash
(Eina_Hash *hash, const void *key, int key_length, int key_hash, const void
*data) EINA_ARG_NONNULL(1, 2, 5); +EAPI Eina_Iterator *
eina_hash_iterator_key_new(const Eina_Hash *hash) EINA_MALLOC
EINA_ARG_NONNULL(1) EINA_WARN_UNUSED_RESULT; +EAPI Eina_Iterator *
eina_hash_iterator_data_new(const Eina_Hash *hash) EINA_MALLOC
EINA_ARG_NONNULL(1) EINA_WARN_UNUSED_RESULT; +EAPI Eina_Iterator *
eina_hash_iterator_tuple_new(const Eina_Hash *hash) EINA_MALLOC
EINA_ARG_NONNULL(1) EINA_WARN_UNUSED_RESULT; +EAPI void
 eina_hash_foreach(const Eina_Hash *hash, Eina_Hash_Foreach cb, const void
*fdata) EINA_ARG_NONNULL(1, 2); /* Paul Hsieh
(http://www.azillionmonkeys.com/qed/hash.html) hash function used by
WebCore (http://webkit.org/blog/8/hashtables-part-2/) */ -EAPI int
eina_hash_superfast(const char *key, int len) EINA_ARG_NONNULL(1); - +EAPI
int             eina_hash_superfast(const char *key, int len)
EINA_ARG_NONNULL(1); /* Hash function first reported by dan bernstein many
years ago in comp.lang.c */ -static inline int eina_hash_djb2(const char
*key, int len) EINA_ARG_NONNULL(1); -static inline int eina_hash_djb2_len
(const char *key, int *plen) EINA_ARG_NONNULL(1, 2); - +static inline int
 eina_hash_djb2(const char *key, int len) EINA_ARG_NONNULL(1); +static
inline int    eina_hash_djb2_len(const char *key, int *plen)
EINA_ARG_NONNULL(1, 2); /* Hash function from
http://www.concentric.net/~Ttwang/tech/inthash.htm */ -static inline int
eina_hash_int32(const unsigned int *pkey, int len) EINA_ARG_NONNULL(1);
-static inline int eina_hash_int64(const unsigned long int *pkey, int len)
EINA_ARG_NONNULL(1); +static inline int    eina_hash_int32(const unsigned
int *pkey, int len) EINA_ARG_NONNULL(1); +static inline int
 eina_hash_int64(const unsigned long int *pkey, int len) EINA_ARG_NONNULL
(1);

 #include "eina_inline_hash.x"


Modified: trunk/eina/src/include/eina_main.h
===================================================================
--- trunk/eina/src/include/eina_main.h  2010-08-16 04:44:45 UTC (rev 51153)
+++ trunk/eina/src/include/eina_main.h  2010-08-16 05:40:50 UTC (rev 51154)
@@ -19,11 +19,10 @@
 #ifndef EINA_MAIN_H_
 #define EINA_MAIN_H_

-
 #include "eina_types.h"

-#define EINA_VERSION_MAJOR 0
-#define EINA_VERSION_MINOR 9
+#define EINA_VERSION_MAJOR 1
+#define EINA_VERSION_MINOR 0

 typedef struct _Eina_Version
 {
@@ -48,11 +47,8 @@
 */

 EAPI int eina_init(void);
-
 EAPI int eina_shutdown(void);
-
 EAPI int eina_threads_init(void);
-
 EAPI int eina_threads_shutdown(void);

 /**

Modified: trunk/eina/src/lib/Makefile.am
===================================================================
--- trunk/eina/src/lib/Makefile.am      2010-08-16 04:44:45 UTC (rev 51153)
+++ trunk/eina/src/lib/Makefile.am      2010-08-16 05:40:50 UTC (rev 51154)
@@ -45,7 +45,10 @@
 eina_strbuf_common.c \
 eina_ustrbuf.c \
 eina_unicode.c \
-eina_quadtree.c
+eina_quadtree.c \
+eina_share_common.h \
+eina_strbuf_common.h \
+eina_strbuf_template_c.i

 if EINA_STATIC_BUILD_CHAINED_POOL
 base_sources +=
$(top_srcdir)/src/modules/mp/chained_pool/eina_chained_mempool.c


------------------------------------------------------------------------------
This SF.net email is sponsored by

Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev
_______________________________________________
enlightenment-svn mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-svn




--
brian
------------------

Cool-Karaoke - The smallest recording studio, in your palm, open-sourced
http://cool-idea.com.tw/

iMaGiNaTiOn iS mOrE iMpOrTaNt tHaN kNoWlEdGe


--
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    [email protected]


------------------------------------------------------------------------------
This SF.net email is sponsored by

Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

------------------------------------------------------------------------------
This SF.net email is sponsored by 

Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev 
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to