home *** CD-ROM | disk | FTP | other *** search
/ Amiga Elysian Archive / AmigaElysianArchive.iso / prog / utils / indent13.lha / indent-1.3 / backup.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-05-06  |  1.4 KB  |  50 lines

  1. /* backup.h -- declarations for making Emacs style backup file names
  2.    Copyright (C) 1992 Free Software Foundation, Inc.
  3.  
  4.    This program is free software; you can redistribute it and/or modify
  5.    it without restriction.
  6.  
  7.    This program is distributed in the hope that it will be useful,
  8.    but WITHOUT ANY WARRANTY; without even the implied warranty of
  9.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  */
  10.  
  11.  
  12. /* When to make backup files.  Analagous to 'version-control'
  13.    in Emacs. */
  14. enum backup_mode
  15. {
  16.   /* Uninitialized or indeterminate value */
  17.   unknown,
  18.  
  19.   /* Never make backups. */
  20.   none,
  21.  
  22.   /* Make simple backups of every file. */
  23.   simple,
  24.  
  25.   /* Make numbered backups of files that already have numbered backups,
  26.      and simple backups of the others. */
  27.   numbered_existing,
  28.  
  29.   /* Make numbered backups of every file. */
  30.   numbered
  31. };
  32.  
  33. struct version_control_values
  34. {
  35.   enum backup_mode value;
  36.   char *name;
  37. };
  38.  
  39. /* Determine the value of `version_control' by looking in the
  40.    environment variable "VERSION_CONTROL".  Defaults to
  41.    numbered_existing. */
  42. extern enum backup_mode version_control_value ();
  43.  
  44. /* Initialize information used in determining backup filenames. */
  45. extern void initialize_backups ();
  46.  
  47. /* Make a backup copy of FILE, taking into account version-control.
  48.    See the description at the beginning of the file for details. */
  49. extern void make_backup ();
  50.