more thoughts
authorKevin P. Fleming <kpfleming@digium.com>
Sun, 10 Jul 2005 23:58:07 +0000 (23:58 +0000)
committerKevin P. Fleming <kpfleming@digium.com>
Sun, 10 Jul 2005 23:58:07 +0000 (23:58 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6078 65c4cc65-6c06-0410-ace0-fbb531ad65f3

doc/CODING-GUIDELINES

index 29b3703..7b27f53 100755 (executable)
@@ -218,6 +218,16 @@ API call somewhere.  If you are duplicating functionality found in
 another static function, consider the value of creating a new API call 
 which can be shared.
 
+As a common example of this point, make an effort to use the lockable
+linked-list macros found in include/asterisk/linkedlists.h. They are
+efficient, easy to use and provide every operation that should be
+necessary for managing a singly-linked list (if something is missing,
+let us know!). Just because you see other open-coded list implementations
+in the source tree is no reason to continue making new copies of
+that code... There are also a number of common string manipulation
+and timeval manipulation functions in asterisk/strings.h and asterisk/time.h;
+use them when possible.
+
 When you achieve your desired functionalty, make another few refactor
 passes over the code to optimize it.