[libvirt] [PATCH] Document preferred naming conventions

Martin Kletzander mkletzan at redhat.com
Fri Mar 3 14:10:11 UTC 2017


On Fri, Mar 03, 2017 at 09:48:23AM +0000, Daniel P. Berrange wrote:
>This documents the preferred conventions for naming files,
>structs, enums, typedefs and functions.
>
>Signed-off-by: Daniel P. Berrange <berrange at redhat.com>
>---
> HACKING              | 71 ++++++++++++++++++++++++++++++++++++++++++++
> docs/hacking.html.in | 83 ++++++++++++++++++++++++++++++++++++++++++++++++++++
> docs/hacking2.xsl    |  4 +++
> 3 files changed, 158 insertions(+)
>
>diff --git a/HACKING b/HACKING
>index fff003b..16be5cf 100644
>--- a/HACKING
>+++ b/HACKING
>@@ -239,6 +239,77 @@ on the subject, on Richard Jones' guide to working with open source projects
> <http://people.redhat.com/rjones/how-to-supply-code-to-open-source-projects/>.
>
>
>+Naming conventions
>+==================
>+When reading libvirt code, a number of different naming conventions will be
>+evident due to various changes in thinking over the course of the project's
>+lifetime. The conventions documented below should be followed when creating
>+any entirely new files in libvirt. When working on existing files, while it is
>+desirable to apply these conventions, keeping a consistent style with existing
>+code in that particular file is generally more important. The overall guiding
>+rule is that every file, enum, struct, function, and typedef name must have a
>+'vir' or 'VIR' prefix. All local scope variable names are exempt, and global
>+variables are exempt, unless exported in a header file.
>+
>+*File names*
>+
>+File naming varies depending on the subdirectory. The preferred style is to
>+have a 'vir' prefix, followed by a name which matches the name of the
>+functions / objects inside the file. For example, a file containing an object
>+'virHashtable' is stored in files 'virhashtable.c' and 'virhashtable.h'.
>+Sometimes, methods which would otherwise be declared 'static' need to be
>+exported for use by a test suite. For this purpose a second header file should
>+be added with a suffix of 'priv'. e.g. 'virhashtablepriv.h'. USe of
>+underscores in file names is discouraged when using the 'vir' prefix style.
>+The 'vir' prefix naming applies to src/util, src/rpc and tests/ directories.
>+Most other directories do not follow this convention.
>+

Why not?  I think src/conf/ should (and does) follow, so does
src/access/, I would even go as far as saying every src/ directory that
is not a hypervisor driver.  But I, personally, would not be offended by
all of them being changed.

Rest looks fine to me.

Martin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: Digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20170303/b4a8ed65/attachment-0001.sig>


More information about the libvir-list mailing list