annotate src/if_cscope.h @ 18501:c9777bf23eb8

Added tag v8.1.2244 for changeset c0445cb7cfe0432628191cc5c7d21400bd2dab75
author Bram Moolenaar <Bram@vim.org>
date Sat, 02 Nov 2019 23:30:04 +0100
parents 7fad90423bd2
children 6e3dc2d630c2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10042
4aead6a9b7a9 commit https://github.com/vim/vim/commit/edf3f97ae2af024708ebb4ac614227327033ca47
Christian Brabandt <cb@256bit.org>
parents: 10023
diff changeset
1 /* vi:set ts=8 sts=4 sw=4 noet:
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2 *
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3 * CSCOPE support for Vim added by Andy Kahn <kahn@zk3.dec.com>
148
72aefd4c1e0d updated for version 7.0046
vimboss
parents: 132
diff changeset
4 * Ported to Win32 by Sergey Khorev <sergey.khorev@gmail.com>
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
5 *
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
6 * The basic idea/structure of cscope for Vim was borrowed from Nvi.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
7 * There might be a few lines of code that look similar to what Nvi
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
8 * has. If this is a problem and requires inclusion of the annoying
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
9 * BSD license, then sue me; I'm not worth much anyway.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
10 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
11
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
12 #if defined(FEAT_CSCOPE) || defined(PROTO)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
13
15868
7fad90423bd2 patch 8.1.0941: macros for MS-Windows are inconsistent
Bram Moolenaar <Bram@vim.org>
parents: 10042
diff changeset
14 #if defined (MSWIN)
8277
fa1e3fa56104 commit https://github.com/vim/vim/commit/9e24f0c5c1b1097295d0619d95da66e6b2d83ac9
Christian Brabandt <cb@256bit.org>
parents: 7807
diff changeset
15 # ifndef WIN32_LEAN_AND_MEAN
fa1e3fa56104 commit https://github.com/vim/vim/commit/9e24f0c5c1b1097295d0619d95da66e6b2d83ac9
Christian Brabandt <cb@256bit.org>
parents: 7807
diff changeset
16 # define WIN32_LEAN_AND_MEAN
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
17 # endif
8277
fa1e3fa56104 commit https://github.com/vim/vim/commit/9e24f0c5c1b1097295d0619d95da66e6b2d83ac9
Christian Brabandt <cb@256bit.org>
parents: 7807
diff changeset
18 # include <windows.h>
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
19 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
20
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
21 #define CSCOPE_SUCCESS 0
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
22 #define CSCOPE_FAILURE -1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
23
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
24 #define CSCOPE_DBFILE "cscope.out"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
25 #define CSCOPE_PROMPT ">> "
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
26
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
27 /*
10023
67d1f619bb26 commit https://github.com/vim/vim/commit/f4145d8e990a72bdfea9db3110a7e42a0ff4240c
Christian Brabandt <cb@256bit.org>
parents: 8277
diff changeset
28 * See ":help cscope-find" for the possible queries.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
29 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
30
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
31 typedef struct {
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
32 char * name;
7807
1a5d34492798 commit https://github.com/vim/vim/commit/d99df423c559d85c17779b3685426c489554908c
Christian Brabandt <cb@256bit.org>
parents: 1931
diff changeset
33 int (*func)(exarg_T *eap);
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
34 char * help;
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
35 char * usage;
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
36 int cansplit; /* if supports splitting window */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
37 } cscmd_T;
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
38
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
39 typedef struct csi {
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
40 char * fname; /* cscope db name */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
41 char * ppath; /* path to prepend (the -P option) */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
42 char * flags; /* additional cscope flags/options (e.g, -p2) */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
43 #if defined(UNIX)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
44 pid_t pid; /* PID of the connected cscope process. */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
45 dev_t st_dev; /* ID of dev containing cscope db */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
46 ino_t st_ino; /* inode number of cscope db */
132
d6009de12681 updated for version 7.0044
vimboss
parents: 7
diff changeset
47 #else
15868
7fad90423bd2 patch 8.1.0941: macros for MS-Windows are inconsistent
Bram Moolenaar <Bram@vim.org>
parents: 10042
diff changeset
48 # if defined(MSWIN)
1385
d0cf8c843186 updated for version 7.1-100
vimboss
parents: 378
diff changeset
49 DWORD pid; /* PID of the connected cscope process. */
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
50 HANDLE hProc; /* cscope process handle */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
51 DWORD nVolume; /* Volume serial number, instead of st_dev */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
52 DWORD nIndexHigh; /* st_ino has no meaning in the Windows */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
53 DWORD nIndexLow;
132
d6009de12681 updated for version 7.0044
vimboss
parents: 7
diff changeset
54 # endif
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
55 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
56
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
57 FILE * fr_fp; /* from cscope: FILE. */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
58 FILE * to_fp; /* to cscope: FILE. */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
59 } csinfo_T;
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
60
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
61 typedef enum { Add, Find, Help, Kill, Reset, Show } csid_e;
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
62
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
63 typedef enum {
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
64 Store,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
65 Get,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
66 Free,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
67 Print
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
68 } mcmd_e;
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
69
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
70
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
71 #endif /* FEAT_CSCOPE */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
72
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
73 /* the end */