Commit Graph

506 Commits

Author SHA1 Message Date
Tom Hacohen f2afb18e00 Eina: reverted commit 56637 (scalability and whatever improvements) it had HUGE leaks.
SVN revision: 56695
2011-02-03 20:04:03 +00:00
Lucas De Marchi da0c0f320f fix misuse of EINA_PURE
qsort may modify a global variable, so this function cannot have pure attribute



SVN revision: 56652
2011-02-02 17:07:49 +00:00
Cedric BAIL b409910a2a * eina: improve speed and scalability a lot.
SVN revision: 56637
2011-02-01 18:10:03 +00:00
Mike Blumenkrantz 58ff455b69 inglishicize some ducks
SVN revision: 56344
2011-01-28 16:05:12 +00:00
Cedric BAIL 701cfebbed * eina: some time compiler are really stupid...
SVN revision: 55561
2010-12-15 11:56:50 +00:00
Carsten Haitzler 9317a439fb and if i'm breaking shit... i may as well put it at the end, so if
size changes later to be bigger, existing code doesnt break (due to
the way this is meant to be accessed).



SVN revision: 55388
2010-12-09 02:55:08 +00:00
Carsten Haitzler 2382fe75ce ok - make it 8192.
SVN revision: 55387
2010-12-09 02:46:11 +00:00
Carsten Haitzler 8ed17348e9 spottied a stabilty/portability bug with PATH_MAx inside a public
header. fix. see comments.



SVN revision: 55386
2010-12-09 01:29:52 +00:00
Cedric BAIL aaae4e223a * eina: eina_array_clean should be inlined from the beginning.
NOTE: to prevent ABI break, I added the old symbol in eina_abi.c.
	So binary/library using eina_array_clean should continue to work
	without any problem.


SVN revision: 55068
2010-11-29 18:32:30 +00:00
helen c508b793d5 eina_array_data_set can receives null to unset
Passing null to the second parameter is the only way to unset the data,
so it should not have EINA_ARG_NONNULL to the data parameter

SVN revision: 54997
2010-11-25 19:38:45 +00:00
Vincent Torri 8fa9c4a7ce add doxygen doc
SVN revision: 54249
2010-11-06 20:38:41 +00:00
Vincent Torri 38c55d2170 remove Eina_Matrixsparse_Item_Cell and Eina_Matrixsparse_Item_Row
as they are used absolutely nowhere.


SVN revision: 54226
2010-11-06 12:50:09 +00:00
Vincent Torri 7ee0e4655b * improve doc
* remove eina_binshare_init() and eina_binshare_shutdown()
   from eina_binshare.h as they must not be exported


SVN revision: 54223
2010-11-06 12:34:55 +00:00
Cedric BAIL 17973f336e * eina: add eina_file_stat_ls and guaranty that eina_file_direct_ls
will not call anything else than readdir_r.


SVN revision: 54105
2010-11-02 17:07:04 +00:00
Cedric BAIL eb4cd21f0c * eina: remove dirent so apps don't rely on non portable code.
SVN revision: 54103
2010-11-02 15:11:05 +00:00
Carsten Haitzler a08524ea65 aaagh. dirent... bad! too many things in dirent that are not portable
- d_type for example... so put that into the direct_info struct and
handle the compat in eina.



SVN revision: 54015
2010-10-30 05:48:07 +00:00
Mike Blumenkrantz 0c27fd1a29 ecrustify testing: looked good so I'm committing for other people to review as well
SVN revision: 53800
2010-10-23 06:41:45 +00:00
Mike Blumenkrantz 7d03bcd110 3 hours and a lot of bugfixing later, uncrustify can now align the * for function prototypes
SVN revision: 53781
2010-10-22 19:58:49 +00:00
Mike Blumenkrantz cb4e0c8a75 this is the second test of my new uncrustify+config
*all struct members are aligned and spaced
*all post-function macros are force-spaced
*all post-function macros are parsed
*all macro definitions are backslash aligned


SVN revision: 53775
2010-10-22 17:30:54 +00:00
Cedric BAIL 2bd686db2b * eina: fix typo.
SVN revision: 53055
2010-10-05 11:32:12 +00:00
Marc Andre Tanner 431685d37a eina: fix wrong EINA_ARG_NONNULL
This fixes the following error:

CC     libeina_la-eina_error.lo
CC     libeina_la-eina_log.lo
In file included from ../../src/include/eina_safety_checks.h:69,
from eina_error.c:150:
../../src/include/eina_error.h:53: error: nonnull argument references non-pointer operand (argument 1, operand 1)
make[3]: *** [libeina_la-eina_error.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
In file included from ../../src/include/eina_safety_checks.h:69,
from eina_log.c:287:
../../src/include/eina_error.h:53: error: nonnull argument references non-pointer operand (argument 1, operand 1)
make[3]: *** [libeina_la-eina_log.lo] Error 1
make[3]: Leaving directory `/data/projects/qi-bootmenu-system/build/temp-armv4tl/eina/src/lib'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/data/projects/qi-bootmenu-system/build/temp-armv4tl/eina/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/data/projects/qi-bootmenu-system/build/temp-armv4tl/eina'
make: *** [all] Error 2

Patch by: Marc Andre Tanner <mat@brain-dump.org>



SVN revision: 52947
2010-10-01 12:18:04 +00:00
Vincent Torri c4771c0127 include limits.h. Should acctually work with DSB, macosx and openindiana.
SVN revision: 52880
2010-09-29 05:41:09 +00:00
Lucas De Marchi a95105a888 Implement function to drop priority of current thread
This function is useful for libraries like ecore and evas that have to
set some worker threads. The first thing these threads should do is to
call this function, so the main thread might continue running without
the worker threads interrupting it too much.



SVN revision: 52651
2010-09-23 20:38:48 +00:00
Mike Blumenkrantz 534bd43e9d initial doxy patch for rbtree from vtorri
CEDRIC WRITE DOCS FOR THIS!


SVN revision: 52172
2010-09-12 19:28:18 +00:00
Mike Blumenkrantz 1970f8dd6c more doxy from vtorri
SVN revision: 52164
2010-09-12 08:03:21 +00:00
Iván Briano 8374dea693 Evil patch from Evil vtorri. Some improvements to Eina docs.
Yup, docs.. truly evil.


SVN revision: 51993
2010-09-08 17:41:05 +00:00
Lucas De Marchi 33dcb37afe Fix common misspellings
The following misspellings were fixed:

asociated->associated
convertion->conversion
exemple->example
existant->existent
immediatly->immediately
isnt->isn't
loosing->losing
memeber->member
occured->occurred
occurence->occurrence
occurences->occurrences
ocurred->occurred
recomended->recommended
sucess->success
teh->the
tiem->time
usefull->useful




SVN revision: 51962
2010-09-08 03:21:16 +00:00
Mike Blumenkrantz e892d9a2bf cleanups for eina_module_list_get type change
vtorri SPANK SPANK SPANK!!!


SVN revision: 51828
2010-09-02 03:28:04 +00:00
Mike Blumenkrantz 7a5677ad43 finish removing threadsafe stuff
SVN revision: 51687
2010-08-27 21:41:03 +00:00
Lucas De Marchi d8002ff386 Revert and re-apply badnull patch
Revert previous patch generated by badnull.cocci script, and apply the new one.
The main difference is that assert and assert-like functions are not touched
anymore.




SVN revision: 51650
2010-08-26 01:34:13 +00:00
Carsten Haitzler e9acd2dfc8 on advice of vtorri <- revert until proven that limits.h works on
these other os's.



SVN revision: 51512
2010-08-22 06:00:13 +00:00
Joerg Sonnenberger 527f011af9 From: Joerg Sonnenberger <joerg@britannica.bec.de>
Use portable header to work on all POSIX compliant systems.
Doesn't break non-POSIX systems as limits.h is a C90 header.



SVN revision: 51505
2010-08-22 01:15:18 +00:00
Lucas De Marchi 5a8a8c9014 Convert (hopefully) all comparisons to NULL
Apply badzero.cocci, badnull.coci and badnull2.cocci

This should convert all cases where there's a comparison to NULL to simpler
forms. This patch applies the following transformations:

code before patch               ||code after patch
===============================================================

return a == NULL;                 return !a;

return a != NULL;                 return !!a;

func(a == NULL);                  func(!a);

func(a != NULL);                  func(!!a);

b = a == NULL;                    b = !a;

b = a != NULL;                    b = !!a;

b = a == NULL ? c : d;            b = !a ? c : d;

b = a != NULL ? c : d;            b = a ? c : d;


other cases:

a == NULL                         !a
a != NULL                         a




SVN revision: 51487
2010-08-21 13:52:25 +00:00
Cedric BAIL e6f9cee051 * eina: fix structure content to be more futur proof and reduce
risk of ABI breakage.


SVN revision: 51390
2010-08-19 12:02:28 +00:00
Tom Hacohen 6a0b488468 Eina: Moved the private headers to src/lib where they belong.
SVN revision: 51388
2010-08-19 08:30:01 +00:00
Vincent Torri 333b64f15e some doc fixes
SVN revision: 51242
2010-08-17 06:58:26 +00:00
Vincent Torri d4cd8f28ae formatting
SVN revision: 51241
2010-08-17 06:05:21 +00:00
Vincent Torri 4e09c14e08 formatting
SVN revision: 51239
2010-08-17 05:28:34 +00:00
Vincent Torri 2e13d0c790 formatting
SVN revision: 51238
2010-08-17 05:22:10 +00:00
Vincent Torri db666d9feb remove rwlock code
SVN revision: 51236
2010-08-17 05:15:28 +00:00
Cedric BAIL e3a887235d * eina: remove configure option for rwlock as it is not used anymore.
SVN revision: 51220
2010-08-16 15:36:17 +00:00
Cedric BAIL c45c36bd80 * eina: attempt to improve a little bit more the header.
Mainly trailing space and macro indentation.


SVN revision: 51217
2010-08-16 15:02:37 +00:00
Cedric BAIL 6293bd87fa * eina: fix amalgamation.
SVN revision: 51210
2010-08-16 13:52:34 +00:00
Cedric BAIL f75eab161d * eina: remove thread safe data type for now. They will be back !
SVN revision: 51179
2010-08-16 09:32:09 +00:00
Carsten Haitzler f4b68549cb formatting. ok - maybe we can have a debate on it, but its better than
it was before. debate up for grabs for now. wont touch other lib
headers until resolved for eina. it's the worst anyway.



SVN revision: 51156
2010-08-16 06:14:19 +00:00
Carsten Haitzler c747bfaadb 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



SVN revision: 51154
2010-08-16 05:40:50 +00:00
Tom Hacohen 063d8ffd64 Eina: Fixed usage of EINA_CONST, the lack of EINA_PURE and EINA_WARN_UNUSED_RESULT and formatting in the following headers:
1. eina_unicode.h
2. eina_strbuf.h eina_ustrbuf.h
3. eina_stringshare.h eina_ustringshare.h eina_binshare.h


SVN revision: 51128
2010-08-15 09:01:16 +00:00
Mike Blumenkrantz 689a24559c add threadsafety for hashes
SVN revision: 51106
2010-08-14 03:05:35 +00:00
Mike Blumenkrantz 44eeac0e1e BOW DOWN BEFORE ME, FOR I HAVE MADE THESE HEADERS READABLE ONCE MORE!
SVN revision: 51065
2010-08-13 06:36:33 +00:00
Mike Blumenkrantz bf66f6f712 go go gadget recrustify!
SVN revision: 51063
2010-08-13 01:46:14 +00:00
Cedric BAIL a6645cb746 * eina: fix eina array threadsafe version.
Also add iterator and accessor ability to walk threadsafely.
	Rename EINA_EACH to EINA_EACH_CB to match other callback cast.


SVN revision: 51000
2010-08-11 14:32:30 +00:00
Mike Blumenkrantz a7398f4e08 refcount locks to avoid deadlocks; array threadsafety should be good to go now
SVN revision: 50962
2010-08-10 12:14:59 +00:00
Mike Blumenkrantz c09c5ed690 and these
SVN revision: 50961
2010-08-10 12:05:51 +00:00
Mike Blumenkrantz a589a1bcbe and this too
SVN revision: 50960
2010-08-10 12:00:36 +00:00
Mike Blumenkrantz cbf7f7b58a array threadsafing wip, get rid of dumb undefineds from earlier
SVN revision: 50959
2010-08-10 11:57:20 +00:00
Mike Blumenkrantz 5b4ec5bd35 change EINA_ARRAY_THREADSAFE_ITER_RETURN to EINA_ARRAY_THREADSAFE_ITER_ESCAPE to match forthcoming threadsafe list api
SVN revision: 50956
2010-08-10 07:48:00 +00:00
Mike Blumenkrantz 56a0bd9396 implement threadsafety for arrays, alter all eina internal array usage to (hopefully) be threadsafe
call eina_threads_init() to enable this if you have pthread rwlock support (posix 2001)
note some function prototypes have lost const on array params to allow locking
WARNING: you should NOT call eina_threads_shutdown unless you are positive that you will not use any arrays which were created while threadsafe mode were enabled, and vice versa.  Failing to adhere to this warning WILL result in either deadlocks or memory leaks.


SVN revision: 50951
2010-08-10 03:26:15 +00:00
Mike Blumenkrantz 224f7d3b55 formatting
SVN revision: 50913
2010-08-08 20:49:26 +00:00
Mike Blumenkrantz 84faaf51fd add rwlock define to eina_config.h
SVN revision: 50911
2010-08-08 19:35:43 +00:00
Lucas De Marchi 0a4617ae38 FORMATTING
* Remove vim modelines:
 find . -name '*.[chx]' -exec sed -i '/\/\*$/ {N;N;/ \* vim:ts/d}' \{\} \;
 find . -name '*.[chx]' -exec sed -i '/\/[\*\/] *vim:/d' \{\} \;

* Remove leading blank lines:
 find . -name '*.[cxh]' -exec sed -i '/./,$!d'

If you use vim, use this in your .vimrc:
set ts=8 sw=3 sts=8 expandtab cino=>5n-3f0^-2{2(0W1st0



SVN revision: 50816
2010-08-04 16:57:32 +00:00
Cedric BAIL c9d5d8a62e * eina: add a way to move a key to another without triggering the Free_Cb.
SVN revision: 50683
2010-07-30 09:06:58 +00:00
Brett Nash 4414556323 Unicde strnlen, and a slight fix to the header so at least part can be read by
humans.

Also strlen/strnlen are pure.


SVN revision: 50676
2010-07-30 03:39:12 +00:00
Iván Briano 55baf0a4f1 DO export this thingies
SVN revision: 50645
2010-07-29 14:08:02 +00:00
Mike Blumenkrantz 5028d6a282 lots of doxy fixes and stop casting to char*
SVN revision: 50582
2010-07-28 03:34:25 +00:00
Carsten Haitzler 15c71af0a5 fix formatting also
SVN revision: 50577
2010-07-28 03:03:25 +00:00
Carsten Haitzler bed21c315d errrr... hmmm why did this change?
SVN revision: 50574
2010-07-28 02:48:11 +00:00
Carsten Haitzler ddc6ba2c2a uncrustify eina.
SVN revision: 50573
2010-07-28 02:37:05 +00:00
Tom Hacohen d928a9ded8 Eina: implement the macro eina_binshare_add.
SVN revision: 50535
2010-07-27 09:41:34 +00:00
Tom Hacohen 279da003e0 Eina: Added Eina_UStrbuf.
Same as Eina_Strbuf but for Eina_Unicode strings.

SVN revision: 50534
2010-07-27 09:05:41 +00:00
Tom Hacohen 3675a5f02b Eina: Add Eina_UStringshare and Eina_Binshare.
Also modified Eina_Stringshare to share most of the code with the two above.
Added Magics for Eina_UStrbuf as well as for UStringshare/Binshare.

SVN revision: 50533
2010-07-27 08:55:23 +00:00
Tom Hacohen 270f765c91 Eina: Added Eina_Unicode.
SVN revision: 50532
2010-07-27 08:22:20 +00:00
Cedric BAIL 07ad9d5139 * eina: add a mempool that just do one big malloc.
SVN revision: 50510
2010-07-26 15:52:43 +00:00
Cedric BAIL 21f5dec9d3 * eina: SPANK SPANK SPANK !
SVN revision: 50509
2010-07-26 09:31:40 +00:00
Mike Blumenkrantz dd2dc39bff this was supposed to go with the last commit...
SVN revision: 50502
2010-07-26 05:09:20 +00:00
Mike Blumenkrantz 7ff1096672 +eina_stringshare_printf
+eina_stringshare_nprintf
the long awaited printf functions for stringshare!


SVN revision: 50490
2010-07-25 19:18:26 +00:00
Mike Blumenkrantz 37de5b807f +eina_error_msg_modify to change the error string of a registered error; preserves allocation state of message creation (errors created with static_register() will remain statically allocated)
SVN revision: 50484
2010-07-25 06:25:06 +00:00
Mike Blumenkrantz 846e224fd2 +eina_str_toupper for completion
SVN revision: 50483
2010-07-25 02:03:10 +00:00
Mike Blumenkrantz 2f183fa194 eina_hash_modify_or_add -> eina_hash_set
SVN revision: 50448
2010-07-23 13:04:21 +00:00
Mike Blumenkrantz 489cae4eee +eina_hash_modify_or_add to always add a value to the hash at the specified key
SVN revision: 50402
2010-07-21 03:15:39 +00:00
Mike Blumenkrantz f18e1899e5 +eina_str_tolower for lowercasing an entire string in one line
SVN revision: 50361
2010-07-19 01:56:42 +00:00
Mike Blumenkrantz c146935917 +eina_stringshare_replace_length to replace a stringshared string with a given length of another string
SVN revision: 50320
2010-07-18 07:39:21 +00:00
Mike Blumenkrantz 8e56225323 attribute whoops
SVN revision: 50318
2010-07-18 06:45:22 +00:00
Mike Blumenkrantz 02ef2d58e5 small patch from andmils in #e; fixes compile on freebsd
SVN revision: 50317
2010-07-18 06:38:23 +00:00
Mike Blumenkrantz 9276378041 +eina_strbuf_string_free to free string in strbuf without freeing strbuf
SVN revision: 50316
2010-07-18 06:21:50 +00:00
Mike Blumenkrantz d3982d4b5c +eina_hash_free_buckets to free buckets without freeing a hash
SVN revision: 50315
2010-07-18 04:24:24 +00:00
Vincent Torri c7bb6d41f5 include sys/syslimits.h on mac os x for PATH_MAX and NAME_MAX
i really dislike having PATH_MAX in a header file...



SVN revision: 50231
2010-07-13 19:17:35 +00:00
Vincent Torri 971f0800ca useless headers now
SVN revision: 50221
2010-07-13 13:57:21 +00:00
Vincent Torri c97a897584 use Win32 native mutex on Windows. To use it, pass the following option
to configure:

--enable-win32-threads

By default, pthreads are used


SVN revision: 50220
2010-07-13 13:51:00 +00:00
Vincent Torri c012d2e7f6 fix compilation on Windows
SVN revision: 50179
2010-07-11 11:52:43 +00:00
Lucas De Marchi 442fe3afae Add missing macros
Add missing EINA_SAFETY_ON_NULL_GOTO and define all the *GOTOs macros when
safety checks are disabled.



SVN revision: 50138
2010-07-09 03:27:04 +00:00
Lucas De Marchi 93f03880bd Do not purify what's impure
Two tests were failing, but no more.



SVN revision: 50067
2010-07-06 15:50:15 +00:00
Gustavo Sverzut Barbieri 5b03bc86ec add some gcc modifiers: non-null args, warn unused results and malloc.
SVN revision: 50066
2010-07-06 15:48:24 +00:00
Gustavo Sverzut Barbieri ed15713785 add eina_file_direct_ls()
Similar to eina_file_ls(), but useful when one wants to apply some
filters to the names before using them as it provides sizes of the
whole path and basename, index of the basename inside the path, dirent
structure for reference (skip directories, etc) and last but not
least, it is faster as it does not stringshare or even builds the full
path at each iteration, instead it keeps the invariant prefix
untouched and just copy the filename.

All in all this is a faster version of eina_file_ls(), use it as
possible as it will avoid overheads.



SVN revision: 50065
2010-07-06 15:45:12 +00:00
Cedric BAIL d4059c7107 * eina: rename ecore_file_ls_iterator to eina_file_ls.
SVN revision: 50002
2010-07-02 17:23:05 +00:00
Cedric BAIL cf128ea0e4 * eina: improve quadtree to support more stuff needed by evas.
SVN revision: 49784
2010-06-21 13:17:09 +00:00
Carsten Haitzler 02503dd152 eina gets version thing ala eet.
SVN revision: 49267
2010-05-29 03:05:04 +00:00
Vincent Torri 247674b26c do not declare inlined functions in the source file,
fix a bit the doc of inlined functions

SVN revision: 49253
2010-05-28 19:03:26 +00:00
Cedric BAIL 6caac50006 * eina: improve QuadTree API.
SVN revision: 48482
2010-04-30 17:04:28 +00:00
Lucas De Marchi c98e00eec0 Define new error handling macros
EINA_SAFETY_ON_TRUE_GOTO and EINA_SAFETY_ON_FALSE_GOTO are now defined
to ease error handling. Functions might need to take actions before
returning upon safety checks fail.




SVN revision: 48478
2010-04-30 14:54:05 +00:00
Cedric BAIL d239b6c524 * eina: oops forgotten file.
SVN revision: 48425
2010-04-29 17:30:18 +00:00
Cedric BAIL 9367b5f7c7 * eina: Add first version of a Quad Tree data type.
NOTE: consider the API experimental and subject to change.


SVN revision: 48424
2010-04-29 17:21:14 +00:00
Cedric BAIL e5abb9bfbe * eina: fix rounding issue with different size of fixed point.
SVN revision: 48053
2010-04-16 14:32:18 +00:00
Vincent Torri 8f36c8075e explicit cast
SVN revision: 47907
2010-04-10 23:23:26 +00:00
Tiago Rezende Campos Falcao b7e410d621 Adding strbuf printfs
SVN revision: 47877
2010-04-09 15:56:20 +00:00
Vincent Torri 8126debb06 fix most compilation errors with vc++ (there are still a
problem with eina_log and output of the log messages:
STDERR_FILENO, STDOUT_FILENO and isatty())

fix some warnings and header files inclusion

update vcproj files


SVN revision: 47384
2010-03-23 06:41:17 +00:00
Gustavo Sverzut Barbieri 9839906150 stringshare: optimization suggested by rasterman, docs.
SVN revision: 47193
2010-03-14 01:06:52 +00:00
Vincent Torri 85b56aebd5 update string buffer documentation
SVN revision: 47084
2010-03-09 16:36:14 +00:00
Vincent Torri 42dcade4b2 more supported OS
SVN revision: 46953
2010-03-07 16:01:00 +00:00
Vincent Torri 248ecd4a13 update TOC
SVN revision: 46949
2010-03-07 14:38:14 +00:00
Vincent Torri b3019e3d4b * fix more str doc
* move static stringshare functions to the 'private'
   part of the file (hence doc fixes)


SVN revision: 46933
2010-03-07 07:11:13 +00:00
Vincent Torri 993b4a6960 fix doc for eina_str
SVN revision: 46931
2010-03-07 06:59:28 +00:00
Vincent Torri 3648f0ed3e the 4th parameter should not be NULL, not the 3rd
patch by Lionel Orry


SVN revision: 46837
2010-03-03 17:25:07 +00:00
Cedric BAIL cf5a3517b9 * eina: Add eina_list_data_set.
SVN revision: 46724
2010-03-01 17:46:15 +00:00
Gustavo Sverzut Barbieri 61f65ae20a Allow user to redefine the default logging level used by
EINA_LOG_ERR(), EINA_LOG_DBG() and other macros.

This will help us to avoid the cumbersome work of having to define the
local macros. I still find the 3-letter macros handy, but we are not
forced to use them now.

I did a small modification to keep the EINA_LOG_DOMAIN_GLOBAL and use
a different symbol for the define, it is EINA_LOG_DOMAIN_DEFAULT. The
documentation was updated to highlight the 2 usage scenario and care
that must be used.


By: Peter Johnson <tam@hiddenrock.com>



SVN revision: 46700
2010-03-01 15:08:40 +00:00
Cedric BAIL 99f4054ce5 * eina: Don't variable name that could shadow math symbols.
Patch requested by Albin "Lutin" Tonnerre.


SVN revision: 46694
2010-03-01 13:50:35 +00:00
Gustavo Sverzut Barbieri 0cece24af2 remove stupid letter I introduced by mistake.
SVN revision: 46671
2010-02-28 21:56:33 +00:00
Gustavo Sverzut Barbieri 90c5c1daaa doc improvements.
SVN revision: 46670
2010-02-28 21:29:30 +00:00
Gustavo Sverzut Barbieri 66ff799e5e Fix other EINA_PURE/EINA_CONST.
Some of them were working because they were inline, so the compiler
would know an just ignore the flag.

For lists and rbtree there is no problem as after each operation we
must change the pointer to the new head, thus the compiler will
consider it changed.



SVN revision: 46583
2010-02-27 15:17:15 +00:00
Gustavo Sverzut Barbieri 8daa98f42e ouch, SPANK SPANK SPANK... me :-( wrong function attributes.
I forgot that EINA_CONST refer to the pointer itself, not to its
contents, as such the pointer did not changed, so gcc was optimizing
subsequent fetches of the value.

There should be another optimization to check for this... but then I
guess it's just c++



SVN revision: 46580
2010-02-27 14:51:52 +00:00
Gustavo Sverzut Barbieri f98c65afcc missing useful warnings for eina_str
SVN revision: 46549
2010-02-27 03:49:13 +00:00
Gustavo Sverzut Barbieri 08127ecc3e eina_str speedups.
* eina_str_split() now does the minimum number of passes and
   allocations. The first pass figures out the string size (strlen())
   and number of delimiters, so we can allocate the exact number of
   elements in array. The second repeats the loop copying elements to
   string and also setting them to the result array.

 * eina_str_split_full() is a variation of eina_str_split() that
   returns also the number of elements in array, in the case you need
   to pre-allocate another array to copy.

 * eina_strlen_bounded() is introduced to limit strlen() results, this
   is used in has_prefix and has_suffix, but possibly other use cases
   where string must be of a maximum size as we don't do useless
   iterations;



SVN revision: 46547
2010-02-27 03:42:27 +00:00
Gustavo Sverzut Barbieri 6769ba3b45 optimization attributes for functions.
SVN revision: 46523
2010-02-26 21:42:03 +00:00
Gustavo Sverzut Barbieri 7dfc83a627 add missing macro for prepend.
SVN revision: 46522
2010-02-26 21:34:28 +00:00
Gustavo Sverzut Barbieri bba70aef2e eina_strbuf_insert variants and fix leak with eina_strbuf_append_escaped()
SVN revision: 46521
2010-02-26 21:33:17 +00:00
Gustavo Sverzut Barbieri f32672764d add eina_strbuf_append_length()
SVN revision: 46516
2010-02-26 20:09:36 +00:00
Gustavo Sverzut Barbieri e3c9d3f62a TRUE/FALSE are gone, use EINA_TRUE/EINA_FALSE instead.
SVN revision: 46500
2010-02-26 00:59:11 +00:00
Gustavo Sverzut Barbieri ff6532a1bd minor documentation fixes.
still needs someone to read and review that.


SVN revision: 46499
2010-02-26 00:57:20 +00:00
Gustavo Sverzut Barbieri 7c8ca04def Remove eina_error deprecated functions.
There were deprecated looooooooong ago, use eina_log if there are some
alien users out there.



SVN revision: 46496
2010-02-26 00:28:58 +00:00
Sebastian Dransfeld 5c49be6e01 Add const where we don't modify pointer
SVN revision: 46153
2010-02-13 19:06:16 +00:00
Vincent Torri 1213602ae5 constants should be unsigned
SVN revision: 46108
2010-02-12 07:27:27 +00:00
Sebastian Dransfeld 229e5de19d remove trailing whitespace
SVN revision: 46029
2010-02-09 21:12:03 +00:00
Sebastian Dransfeld 5847c6f245 string_remove -> string_steal
Better naming

SVN revision: 46028
2010-02-09 21:06:27 +00:00
Sebastian Dransfeld fe99f062e9 Check whether alloc works, return false on error
SVN revision: 46027
2010-02-09 21:06:16 +00:00
Sebastian Dransfeld dca87fdf87 Typo
SVN revision: 46025
2010-02-09 21:05:56 +00:00
Gustavo Sverzut Barbieri ebed1f20fe minor matching speedups.
keep log level name size (namelen) and use it before strcmp().



SVN revision: 45998
2010-02-09 02:13:55 +00:00
Gustavo Sverzut Barbieri 191d87d78a eina log level utilities.
couple of functions that are useful outside and should be fast.



SVN revision: 45996
2010-02-09 01:43:58 +00:00
Gustavo Sverzut Barbieri f7cd9786f1 eina log parameters getters and setters.
allow external users to check or set flags that are initialized based
on environment variables such as EINA_LOG_COLOR_DISABLE.



SVN revision: 45995
2010-02-09 00:52:00 +00:00
Sebastian Dransfeld 95d903dab7 And correct return type
SVN revision: 45967
2010-02-07 19:24:28 +00:00
Sebastian Dransfeld 2587c28d9a Add eina_strbuf_reset
Function to reset the internal string, so we can reuse the allocated
mem.

SVN revision: 45952
2010-02-06 21:43:22 +00:00
Sebastian Dransfeld 522a0ab1ab Add eina_strbuf_append_escaped for edje
SVN revision: 45950
2010-02-06 21:43:02 +00:00
Sebastian Dransfeld 72fccca0eb Add eina_str_escape
SVN revision: 45949
2010-02-06 21:42:51 +00:00
Sebastian Dransfeld 4a1ac380b1 Add functions to match evas strbuf
SVN revision: 45943
2010-02-06 20:41:43 +00:00
Sebastian Dransfeld ac60497dbf EINA_ARG_NONNULL
SVN revision: 45942
2010-02-06 20:41:32 +00:00
Sebastian Dransfeld eb29a86306 copy ecore_txt_convert to eina_str_convert
SVN revision: 45790
2010-02-02 04:49:38 +00:00
Vincent Torri 9b5ea1110b eina_str:
* return Eina_Bool instead of int when necessary
 * improve documentation
 * formatting


SVN revision: 45753
2010-01-31 12:27:41 +00:00
Sebastian Dransfeld c6ca24216c Add EINA_MAGIC to strbuf
SVN revision: 45651
2010-01-27 20:48:27 +00:00
Sebastian Dransfeld 436249c412 Move ecore_str and ecore_strbuf to eina
SVN revision: 45650
2010-01-27 20:47:47 +00:00
Carsten Haitzler 735ad48c39 eina - does modules like the rest of efl, so it's able to be installed with
multiple versions at the same time. eventually will neeed to also include
major number in release name too.



SVN revision: 45594
2010-01-26 15:54:28 +00:00
Cedric BAIL a9a3813966 * eina: Allow compilation with -Wshadow.
Patch from Albin Tonerre.


SVN revision: 45497
2010-01-23 19:53:27 +00:00
Mikhail Gusarov 4f7ae8764a eina: fix eina_module_list_get prototype: 'path' argument can be NULL
SVN revision: 45246
2010-01-17 06:01:20 +00:00