X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/27f991037b8d3e6181741b3ca41df44b64b66d4d..HEAD:/README.coding diff --git a/README.coding b/README.coding deleted file mode 100644 index c2fd8fbfbe..0000000000 --- a/README.coding +++ /dev/null @@ -1,102 +0,0 @@ -** -** Source tree organization -** -****************************************************** - - examples/ -> Supposed to be copy/pastable by the user, so keep it clear and - avoid any kind of trick. In particular, do only include the - public headers here. - - teshsuite/ -> The more test the better. Put in there any strange test - doing things that the users are not supposed to do, - just to see if our framework is robust to incorrect and - unusual behaviors. All tests written in this section - should leverage our tesh(1) utility. - -** -** NEW type naming standard in SimGrid4 -** -***************************************************** - -SimGrid4 will follow the these rules: - - - filenames are unique in the whole project - (because of a bug in Sonar coverage computation) - C++ - - fields, methods and variables are in snake_case() - - Classes and Enum names are in UpperCamelCase - - Enum values are in UPPER_SNAKE_CASE (as constants) - - public filenames: api_Class.cpp and api/Class.hpp. - - Example: src/s4u/s4u_ConditionVariable.cpp and - include/simgrid/s4u/ConditionVariable.hpp - - If you prefer api_class.cpp, that's OK, too. Breath and relax. - Example: src/s4u/s4u_actor.cpp and include/simgrid/s4u/Actor.hpp - - internal/kernel filenames: Class.cpp and Class.hpp - - Example: src/kernel/activity/Activity.cpp - include/simgrid/activity/Activity.hpp - C - - variables and functions are in snake_case() - - typedefs do not hide the pointers, ie * must be explicit - char * sg_host_get_name(sg_host_t * host); - - -This is different from the old convention (described below), that -should not be used in S4U and its bindings, nor in the kernel. - -** -** OLD Type naming standard in SimGrid3 -** -***************************************************** - -SimGrid3 legacy interfaces (ie, MSG and SimDag) are following these rules: - - - ???_t is a valid type (built with typedef) - - s_toto_t is a structure (access to fields with .) - - s_toto is a structure needing 'struct' keyword to be used - - e_toto_t is an enum - - u_toto_t is an union - - u_toto is an union needing 'union' keyword to be used - - toto_t is an 'object' (struct*) - -Please to not call toto_t something else than an 'object' (ie, something you -have to call _new and _free on it). - -Example: - typedef struct s_toto {} s_toto_t, *toto_t; - typedef enum {} e_toto_t; - -Moreover, only toto_t (and e_toto_t) are public. The rest (mainly s_toto_t) -is private. - -If you see any part of the code not following this convention, this is a -bug. Please report it (or fix it yourself if you can). - -** -** Commenting the source: doxygen -** -**************************************************** - -The global structure of the documentation is in doc/modules.doc - -The structure of each module (xbt, msg, etc) is in doc/module-.doc - -The structure of a module is in its public header. This way, you're sure to -see all the public interface (and only it). The different parts of the -interface are grouped using the @name construct, even if it's buggy. Since -parts often get reordered, it's better to add numbers to the parts (so that -users can see the intended order). - -The documentation of each type and macro are also in the public header since -this is were they live. - -The documentation of each function must be in the C file were it lives. - -Any public element (function, type and macro) must have a @brief part. - - -* -* SimGrid Hacker Survival Guide (FIXME: should be betterly placed) -******************************** -* When you add/remove files, and/or make changes in the lists of files to build, - please check that "make distcheck" still succeeds. This is needed to ensure - that the generated archive is consistent.