summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAndy Williams <andy@andywilliams.me>2017-12-07 16:21:11 +0000
committerAndy Williams <andy@andywilliams.me>2017-12-07 16:21:11 +0000
commit9d09d722b96dc6ff49236249de10380080330df4 (patch)
tree4d51c3fe017c78f3b3e395dd5f68276f1579bac2 /src
parentec8fe2a8f32af4a593495d4507ecaddb7244373a (diff)
eina: Update header for readability
Author Nate Drake Reviewer: Andy Williams
Diffstat (limited to 'src')
-rw-r--r--src/lib/eina/Eina.h54
1 files changed, 27 insertions, 27 deletions
diff --git a/src/lib/eina/Eina.h b/src/lib/eina/Eina.h
index 7ed03e6673..256de025bc 100644
--- a/src/lib/eina/Eina.h
+++ b/src/lib/eina/Eina.h
@@ -57,15 +57,15 @@
57 * 57 *
58 * @section eina_main_intro Introduction 58 * @section eina_main_intro Introduction
59 * 59 *
60 * The Eina library is a library that implements an API for data types 60 * The Eina library is a library which implements an API for data types
61 * in an efficient way. It also provides some useful tools like 61 * in an efficient way. It also provides some useful tools like
62 * opening shared libraries, errors management, type conversion, 62 * opening shared libraries, error management, type conversion,
63 * time accounting and memory pool. 63 * time accounting and memory pools.
64 * 64 *
65 * This library is cross-platform and can be compiled and used on 65 * This library is cross-platform and can be compiled and used on
66 * Linux, BSD, Opensolaris and Windows (XP and CE). 66 * Linux, BSD, and Windows.
67 * 67 *
68 * The data types that are available are (see @ref Eina_Data_Types_Group): 68 * The data types available are (see @ref Eina_Data_Types_Group):
69 * @li @ref Eina_Fp_Group standard floating point numbers. 69 * @li @ref Eina_Fp_Group standard floating point numbers.
70 * @li @ref Eina_Inline_Array_Group standard array of inlined members. 70 * @li @ref Eina_Inline_Array_Group standard array of inlined members.
71 * @li @ref Eina_Array_Group standard array of @c void* data. 71 * @li @ref Eina_Array_Group standard array of @c void* data.
@@ -82,7 +82,7 @@
82 * @li @ref Eina_Trash_Group container of unused but allocated data. 82 * @li @ref Eina_Trash_Group container of unused but allocated data.
83 * @li @ref Eina_Value_Group container for generic value storage and access. 83 * @li @ref Eina_Value_Group container for generic value storage and access.
84 * 84 *
85 * The tools that are available are (see @ref Eina_Tools_Group): 85 * The tools available are (see @ref Eina_Tools_Group):
86 * @li @ref Eina_Benchmark_Group helper to write benchmarks. 86 * @li @ref Eina_Benchmark_Group helper to write benchmarks.
87 * @li @ref Eina_Convert_Group faster conversion from strings to integers, double, etc. 87 * @li @ref Eina_Convert_Group faster conversion from strings to integers, double, etc.
88 * @li @ref Eina_Counter_Group measures number of calls and their time. 88 * @li @ref Eina_Counter_Group measures number of calls and their time.
@@ -100,9 +100,9 @@
100 * 100 *
101 * @section eina_main_compiling How to compile 101 * @section eina_main_compiling How to compile
102 * 102 *
103 * Eina is a library your application links to. The procedure for this is 103 * Eina is a library to which your app can link. The procedure for this is
104 * very simple. You simply have to compile your application with the 104 * very simple. You simply have to compile your application with the
105 * appropriate compiler flags that the @c pkg-config script outputs. For 105 * appropriate compiler flags as outputted by the @c pkg-config script. For
106 * example: 106 * example:
107 * 107 *
108 * Compiling C or C++ files into object files: 108 * Compiling C or C++ files into object files:
@@ -121,8 +121,8 @@
121 * 121 *
122 * @section eina_main_next_steps Next Steps 122 * @section eina_main_next_steps Next Steps
123 * 123 *
124 * After you understood what Eina is and installed it in your system 124 * After you've understood what Eina is and installed it,
125 * you should proceed understanding the programming interface. 125 * you can now learn more about the the programming interface.
126 * 126 *
127 * Recommended reading: 127 * Recommended reading:
128 * 128 *
@@ -163,37 +163,37 @@
163 * 163 *
164 * The choice of which container to use in each situation is very important in 164 * The choice of which container to use in each situation is very important in
165 * achieving good performance and readable code. The most common container types 165 * achieving good performance and readable code. The most common container types
166 * to be used are: 166 * used are:
167 * @li List 167 * @li List
168 * @li Inline list 168 * @li Inline list
169 * @li Array 169 * @li Array
170 * @li Inline array 170 * @li Inline array
171 * @li Hash 171 * @li Hash
172 * 172 *
173 * All types have virtues and vices. The following considerations are good 173 * All types have pros and cons. The following considerations are good
174 * starting point in deciding which container to use: 174 * starting point in deciding which container to use:
175 * @li Hashes are appropriate for datasets which will be searched often; 175 * @li Hashes are appropriate for datasets which will be searched often.
176 * @li arrays are good when accessing members by position; 176 * @li Arrays are good when accessing members by position;
177 * @li lists provide good versatility for adding elements in any position with 177 * @li Lists provide good versatility for adding elements in any position with
178 * minimal overhead; 178 * minimal overhead.
179 * @li inline arrays use very little memory and don't cause fragmentation and 179 * @li Inline arrays use very little memory and don't cause fragmentation so
180 * therefore are a good option in memory constrained systems; 180 * are a good option in memory constrained systems.
181 * @li inline lists are the appropriate type to use when the flexibility of a 181 * @li Inline lists are the best type to use when list flexibility is
182 * list is required but the overhead of pointer indirection is not acceptable. 182 * required but no pointer indirection overhead can be allowed.
183 * @warning These are general considerations, every situation is different, 183 * @warning These are general considerations. Every situation is different.
184 * don't follow these recommendations blindly. 184 * Don't follow these recommendations blindly.
185 * 185 *
186 * @section eina_main_Creation Creating custom container types 186 * @section eina_main_Creation Creating custom container types
187 * 187 *
188 * @note Before creating a custom container check if one of the existing ones 188 * @note Before creating a custom container check if any of the existing ones
189 * doesn't suit your needs. For example, while there is no stack type @ref 189 * suit your needs. For example, while there is no stack type @ref
190 * Eina_Array_Group is a very good substitute, similarly there is no queue type 190 * Eina_Array_Group is a very good substitute. Similarly there is no queue type
191 * however an @ref Eina_List_Group works very well as a queue. 191 * however an @ref Eina_List_Group works very well as a queue.
192 * 192 *
193 * If creating a custom container type consider allowing access to the data in 193 * If creating a custom container type, consider allowing access to the data in
194 * your container through @ref Eina_Iterator_Group "Iterators" and @ref 194 * your container through @ref Eina_Iterator_Group "Iterators" and @ref
195 * Eina_Accessor_Group "Accessors". To do so your container should have an 195 * Eina_Accessor_Group "Accessors". To do so your container should have an
196 * iterator creation function and an accessor creation function, these functions 196 * iterator creation function and an accessor creation function. These functions
197 * should return properly populated @ref _Eina_Iterator and @ref _Eina_Accessor. 197 * should return properly populated @ref _Eina_Iterator and @ref _Eina_Accessor.
198 * 198 *
199 * @defgroup Eina_Tools_Group Tools 199 * @defgroup Eina_Tools_Group Tools