George Joseph
6d5941297b
vector: Traversal, retrieval, insert and locking enhancements
...
Renamed AST_VECTOR_INSERT to AST_VECTOR_REPLACE because it really
does replace not insert. The few users of AST_VECTOR_INSERT were
refactored. Because these are macros, there should be no ABI
compatibility issues.
Added AST_VECTOR_INSERT_AT that actually inserts an element into the
vector at a specific index pushing existing elements to the right.
Added AST_VECTOR_GET_CMP that can retrieve from the vector based
on a user-provided compare function.
Added AST_VECTOR_CALLBACK function that will execute a function
for each element in the vector. Similar to ao2_callback and
ao2_callback_data functions although the vector callback can take
a variable number of arguments. This should allow easy migration
to a vector where a container might be too heavy.
Added read/write locked vector and lock manipulation macros.
Added unit tests.
ASTERISK-25045 #close
Change-Id: I2e07ecc709d2f5f91bcab8904e5e9340609b00e0
2015-05-04 18:45:28 -06:00
..
2013-08-16 18:34:31 +00:00
2014-12-22 20:08:35 +00:00
2015-04-11 19:43:43 -06:00
2014-07-20 22:06:33 +00:00
2014-06-19 20:13:20 +00:00
2012-06-25 15:55:25 +00:00
2010-07-14 20:48:59 +00:00
2013-12-18 20:33:37 +00:00
2015-04-09 12:57:21 +00:00
2014-01-12 22:24:27 +00:00
2014-07-24 21:01:37 +00:00
2014-09-26 14:41:38 +00:00
2015-04-29 13:28:54 -04:00
2014-07-24 17:50:46 +00:00
2014-07-20 22:06:33 +00:00
2013-12-19 17:45:21 +00:00
2015-05-03 10:05:07 -05:00
2013-08-23 18:07:40 +00:00
2014-04-15 23:21:19 +00:00
2013-07-25 04:06:32 +00:00
2013-08-22 18:52:41 +00:00
2015-01-22 19:30:12 +00:00
2015-03-26 17:13:26 +00:00
2014-08-07 15:30:19 +00:00
2015-01-22 19:30:12 +00:00
2013-08-05 16:59:13 +00:00
2015-04-08 18:20:26 +00:00
2015-03-13 01:12:35 +00:00
2013-12-03 17:35:54 +00:00
2012-02-22 21:22:43 +00:00
2014-07-20 22:06:33 +00:00
2013-01-09 20:21:33 +00:00
2013-05-21 18:00:22 +00:00
2014-01-12 22:13:12 +00:00
2015-04-09 12:57:21 +00:00
2011-07-07 22:39:54 +00:00
2014-03-07 15:47:55 +00:00
2015-05-02 19:31:12 -05:00
2013-12-18 20:33:37 +00:00
2014-10-09 17:46:23 +00:00
2013-04-15 16:22:03 +00:00
2014-07-20 22:06:33 +00:00
2014-01-28 20:47:15 +00:00
2013-08-30 13:40:27 +00:00
2014-07-20 22:06:33 +00:00
2015-03-17 22:15:42 +00:00
2013-07-08 14:26:40 +00:00
2015-03-13 01:12:35 +00:00
2012-08-30 14:23:28 +00:00
2014-07-20 22:06:33 +00:00
2014-08-07 15:30:19 +00:00
2014-05-22 12:01:37 +00:00
2015-02-26 18:53:36 +00:00
2011-12-06 19:09:56 +00:00
2015-04-15 10:47:53 -03:00
2015-04-15 10:47:53 -03:00
2015-03-25 12:32:26 +00:00
2015-04-15 10:47:53 -03:00
2015-03-25 12:32:26 +00:00
2015-03-25 12:32:26 +00:00
2015-03-25 12:32:26 +00:00
2015-04-09 14:58:02 +00:00
2015-03-25 12:32:26 +00:00
2014-03-17 22:54:32 +00:00
2012-01-30 23:58:51 +00:00
2013-12-11 19:19:24 +00:00
2015-04-10 17:56:47 +00:00
2015-04-16 09:34:56 -05:00
2014-05-22 12:01:37 +00:00
2014-05-22 12:01:37 +00:00
2011-07-15 00:23:14 +00:00
2014-11-17 16:58:52 +00:00
2013-09-13 22:19:23 +00:00
2014-09-16 16:33:53 +00:00
2015-04-27 18:37:26 -04:00
2015-04-27 18:37:26 -04:00
2014-08-07 18:51:16 +00:00
2014-12-12 17:01:42 +00:00
2014-10-03 17:47:42 +00:00
2014-09-19 12:50:08 +00:00
2015-04-17 15:58:07 -05:00
2012-11-16 00:19:48 +00:00
2012-08-30 14:23:28 +00:00
2014-06-26 12:21:14 +00:00
2015-01-30 17:21:50 +00:00
2014-07-20 22:06:33 +00:00
2012-01-27 18:47:16 +00:00
2015-04-06 19:04:32 +00:00
2015-02-27 18:31:31 +00:00
2012-11-27 18:20:18 +00:00
2013-04-08 13:27:45 +00:00
2015-02-21 02:47:44 +00:00
2015-04-09 12:57:21 +00:00
2015-04-20 23:02:06 -05:00
2015-04-17 15:58:07 -05:00
2012-08-29 22:48:08 +00:00
2013-06-24 13:49:20 +00:00
2014-08-05 21:44:09 +00:00
2013-07-01 16:01:24 +00:00
2014-07-20 22:06:33 +00:00
2015-02-11 17:03:04 +00:00
2015-05-02 19:31:12 -05:00
2013-08-22 21:29:16 +00:00
2014-06-19 20:13:20 +00:00
2014-06-24 02:50:15 +00:00
2015-04-13 07:06:28 -04:00
2015-04-27 18:37:26 -04:00
2013-08-23 15:42:27 +00:00
2014-05-22 15:52:30 +00:00
2013-07-03 17:58:45 +00:00
2014-04-18 16:44:48 +00:00
2014-10-14 18:13:33 +00:00
2013-08-02 13:54:31 +00:00
2010-09-02 05:02:54 +00:00
2013-08-01 13:49:34 +00:00
2010-06-18 21:32:09 +00:00
2015-04-29 15:39:11 -05:00
2014-03-28 18:32:50 +00:00
2014-01-06 17:45:25 +00:00
2012-09-21 17:14:59 +00:00
2014-07-07 16:08:47 +00:00
2014-03-08 16:50:36 +00:00
2014-08-07 14:35:09 +00:00
2014-08-07 19:26:32 +00:00
2014-10-16 16:32:25 +00:00
2015-04-02 14:56:39 +00:00
2015-04-29 12:04:06 -05:00
2012-02-24 15:10:35 +00:00
2014-12-09 20:03:22 +00:00
2013-08-22 22:33:48 +00:00
2015-02-19 02:03:01 +00:00
2014-06-30 19:51:28 +00:00
2013-08-17 14:39:27 +00:00
2013-05-30 17:05:53 +00:00
2011-04-26 19:38:41 +00:00
2015-01-26 14:50:40 +00:00
2011-10-11 19:06:29 +00:00
2011-02-22 23:04:49 +00:00
2015-05-02 19:31:12 -05:00
2014-07-20 22:06:33 +00:00
2014-07-20 22:06:33 +00:00
2014-07-21 08:41:29 +00:00
2014-07-20 22:06:33 +00:00
2014-12-05 17:08:27 +00:00
2013-06-24 13:49:20 +00:00
2014-07-20 22:06:33 +00:00
2014-04-29 15:10:24 +00:00
2013-04-22 16:22:00 +00:00
2013-11-23 17:48:28 +00:00
2014-08-22 16:52:51 +00:00
2014-01-14 23:44:57 +00:00
2014-03-07 15:47:55 +00:00
2014-07-18 21:48:46 +00:00
2014-03-07 15:47:55 +00:00
2015-02-12 20:34:37 +00:00
2014-11-14 15:28:42 +00:00
2013-08-01 13:49:34 +00:00
2014-12-08 16:24:36 +00:00
2013-11-22 20:10:46 +00:00
2014-12-01 17:59:21 +00:00
2014-12-01 17:59:21 +00:00
2013-07-19 18:00:35 +00:00
2013-05-08 13:39:08 +00:00
2014-12-01 17:59:21 +00:00
2013-04-26 20:05:15 +00:00
2014-11-19 19:32:23 +00:00
2015-03-30 02:39:57 +00:00
2011-12-01 21:19:41 +00:00
2015-01-12 18:01:46 +00:00
2014-10-03 17:47:42 +00:00
2014-07-03 17:16:55 +00:00
2013-02-14 18:47:56 +00:00
2014-12-05 17:08:27 +00:00
2013-04-25 18:25:31 +00:00
2015-04-17 16:30:13 -05:00
2013-06-17 03:00:38 +00:00
2014-02-07 20:01:45 +00:00
2014-07-20 22:06:33 +00:00
2013-12-19 17:13:53 +00:00
2010-08-17 19:34:52 +00:00
2014-08-21 14:42:12 +00:00
2015-04-22 06:26:07 -05:00
2013-03-28 23:59:20 +00:00
2015-05-04 18:45:28 -06:00
2012-01-25 21:31:28 +00:00
2013-02-15 13:38:12 +00:00
2014-07-24 13:00:59 +00:00
2014-07-22 16:20:58 +00:00