From b2346922a76a50a89e33beab4ebbc0950de8a8df Mon Sep 17 00:00:00 2001 From: tholo Date: Sat, 22 Aug 1998 20:50:00 +0000 Subject: Latest version from Cyclic --- gnu/usr.bin/cvs/diff/diffrun.h | 69 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 gnu/usr.bin/cvs/diff/diffrun.h (limited to 'gnu/usr.bin/cvs/diff/diffrun.h') diff --git a/gnu/usr.bin/cvs/diff/diffrun.h b/gnu/usr.bin/cvs/diff/diffrun.h new file mode 100644 index 00000000000..28c1f45e5fd --- /dev/null +++ b/gnu/usr.bin/cvs/diff/diffrun.h @@ -0,0 +1,69 @@ +/* Interface header file for GNU DIFF library. + Copyright (C) 1998 Free Software Foundation, Inc. + +This file is part of GNU DIFF. + +GNU DIFF 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, or (at your option) +any later version. + +GNU DIFF 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 GNU DIFF; see the file COPYING. If not, write to +the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ + +#ifndef DIFFRUN_H +#define DIFFRUN_H + +/* This header file defines the interfaces used by the diff library. + It should be included by programs which use the diff library. */ + +#include + +#if defined __STDC__ && __STDC__ +#define DIFFPARAMS(args) args +#else +#define DIFFPARAMS(args) () +#endif + +/* The diff_callbacks structure is used to handle callbacks from the + diff library. All output goes through these callbacks. When a + pointer to this structure is passed in, it may be NULL. Also, any + of the individual callbacks may be NULL. This means that the + default action should be taken. */ + +struct diff_callbacks +{ + /* Write output. This function just writes a string of a given + length to the output file. The default is to fwrite to OUTFILE. + If this callback is defined, flush_output must also be defined. */ + void (*write_output) DIFFPARAMS((char const *, size_t)); + /* Flush output. The default is to fflush OUTFILE. If this + callback is defined, write_output must also be defined. */ + void (*flush_output) DIFFPARAMS((void)); + /* Write to stdout. This is called for version and help messages. */ + void (*write_stdout) DIFFPARAMS((char const *)); + /* Print an error message. The first argument is a printf format, + and the next two are parameters. The default is to print a + message on stderr. */ + void (*error) DIFFPARAMS((char const *, char const *, char const *)); +}; + +/* Run a diff. */ + +extern int diff_run DIFFPARAMS((int, char **, char *, + const struct diff_callbacks *)); + +/* Run a diff3. */ + +extern int diff3_run DIFFPARAMS((int, char **, char *, + const struct diff_callbacks *)); + +#undef DIFFPARAMS + +#endif /* DIFFRUN_H */ -- cgit v1.2.3-59-g8ed1b