
(proposal)

FILE HEADER TEMPLATE
====================

/* 
 * $Id$
 */

/*
   Harbour Project source code

   (one/two-liner description about the purpose of this source file)

   Copyright 1999  (list of individual authors)
   www - http://www.harbour-project.org

   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 2 of the License, or
   (at your option) any later version, with one exception:

   The exception is that if you link the Harbour Runtime Library (HRL)
   and/or the Harbour Virtual Machine (HVM) with other files to produce
   an executable, this does not by itself cause the resulting executable
   to be covered by the GNU General Public License. Your use of that
   executable is in no way restricted on account of linking the HRL
   and/or HVM code into it.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit
   their web site at http://www.gnu.org/).

   V 1.6    Victor Szel                 RCS Id section separated from
                                        Licenc text.
   V 1.5    Victor Szel                 Small name correction.
   V 1.4    David G. Holm               Removed "(C)" from Copyright notice
                                        Put author's name rather than date
                                        next to each version number, because
                                        the RCS tracks dates, but only tracks
                                        CVS user names, not author names.
   V 1.3    Victor Szel                 Description line changed to be a
                                        template, too.
   V 1.2    David G. Holm               Added HRL/HVM license exception for
                                        executables. Added GNU web site.
                                        Replaced "?" in copyright statement
                                        with "(list of individual authors)".
   V 1.1    Victor Szel                 Added templates for file and function
                                        headers. Committed to CVS.
   V 1.0    Victor Szel                 Initial version.
*/

FUNCTION HEADER TEMPLATE
========================

/*  $DOC$
 *  $FUNCNAME$
 *
 *  $CATEGORY$
 *
 *  $ONELINER$
 *
 *  $SYNTAX$
 *
 *  $ARGUMENTS$
 *
 *  $RETURNS$
 *
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $TESTS$
 *
 *  $STATUS$
 *
 *  $COMPLIANCE$
 *
 *  $SEEALSO$
 *
 *  $END$
 */

Example:

/*  $DOC$
 *  $FUNCNAME$
 *      IsLeapYr()
 *  $CATEGORY$
 *      Dates
 *  $ONELINER$
 *      Test if a date falls in a leap year.
 *  $SYNTAX$
 *      IsLeapYr( [<dDate>] ) --> lIsLeap
 *  $ARGUMENTS$
 *      <dDate> is an optional date. If not supplied is defaults to the
 *      value returned from date().
 *  $RETURNS$
 *      TRUE if <dDate> falls in a leap year, FALSE if not.
 *  $DESCRIPTION$
 *      IsLeapYr() can be used to check if a given year is a leap year.
 *  $EXAMPLES$
 *      // Check if it's a leap year.
 *
 *      If IsLeapYr()
 *         ? "One extra day before you get paid this Feb!!"
 *      Else
 *         ? "A normal year"
 *      EndIf
 *  $TESTS$
 *      valtype( IsLeapYr( date() ) ) == "L"
 *      valtype( IsLeapYr( ctod( "" ) ) ) == "L"
 *      valtype( IsLeapYr() ) == "L"
 *      IsLeapYr( SToD( "20000101" ) )
 *      !IsLeapYr( SToD( "19000101" ) )
 *      IsLeapYr( SToD( "19841231" ) )
 *      !IsLeapYr()
 *  $STATUS$
 *      C
 *  $COMPLIANCE$
 *      IsLeapYr() works exactly like CA-Clipper's IsLeapYr(), if your
 *      CA-Clipper doesn't have such a function you're probably in a
 *      different universe from the author of this function.
 *  $SEEALSO$
 *      Date() IsWeekend() IsHarbourFinished() IsApocalypse()
 *  $END$
 */

