From afce081b90c1e2c50c3507758c7558a0dfa1f33e Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 27 Apr 2024 15:18:03 +0200 Subject: Adding upstream version 2:8.2.2434. Signed-off-by: Daniel Baumann --- src/if_cscope.h | 71 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 src/if_cscope.h (limited to 'src/if_cscope.h') diff --git a/src/if_cscope.h b/src/if_cscope.h new file mode 100644 index 0000000..5c031a3 --- /dev/null +++ b/src/if_cscope.h @@ -0,0 +1,71 @@ +/* vi:set ts=8 sts=4 sw=4 noet: + * + * CSCOPE support for Vim added by Andy Kahn + * Ported to Win32 by Sergey Khorev + * + * The basic idea/structure of cscope for Vim was borrowed from Nvi. + * There might be a few lines of code that look similar to what Nvi + * has. If this is a problem and requires inclusion of the annoying + * BSD license, then sue me; I'm not worth much anyway. + */ + +#if defined(FEAT_CSCOPE) || defined(PROTO) + +#if defined (MSWIN) +# ifndef WIN32_LEAN_AND_MEAN +# define WIN32_LEAN_AND_MEAN +# endif +# include +#endif + +#define CSCOPE_SUCCESS 0 +#define CSCOPE_FAILURE -1 + +#define CSCOPE_DBFILE "cscope.out" +#define CSCOPE_PROMPT ">> " + +/* + * See ":help cscope-find" for the possible queries. + */ + +typedef struct { + char * name; + int (*func)(exarg_T *eap); + char * help; + char * usage; + int cansplit; // if supports splitting window +} cscmd_T; + +typedef struct csi { + char * fname; // cscope db name + char * ppath; // path to prepend (the -P option) + char * flags; // additional cscope flags/options (e.g, -p2) +#if defined(UNIX) + pid_t pid; // PID of the connected cscope process. + dev_t st_dev; // ID of dev containing cscope db + ino_t st_ino; // inode number of cscope db +#else +# if defined(MSWIN) + DWORD pid; // PID of the connected cscope process. + HANDLE hProc; // cscope process handle + DWORD nVolume; // Volume serial number, instead of st_dev + DWORD nIndexHigh; // st_ino has no meaning in the Windows + DWORD nIndexLow; +# endif +#endif + + FILE * fr_fp; // from cscope: FILE. + FILE * to_fp; // to cscope: FILE. +} csinfo_T; + +typedef enum { Add, Find, Help, Kill, Reset, Show } csid_e; + +typedef enum { + Store, + Get, + Free, + Print +} mcmd_e; + + +#endif // FEAT_CSCOPE -- cgit v1.2.3