ctags.rb 1.1.3 → 1.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/ext/extconf.rb +1 -1
- data/ext/vendor/ctags/Tmain/input-encoding-option.d/tags-expected.txt +1 -0
- data/ext/vendor/ctags/Tmain/interactive-mode.d/run.sh +4 -1
- data/ext/vendor/ctags/Tmain/json-output-format.d/input.go +4 -0
- data/ext/vendor/ctags/Tmain/json-output-format.d/stdout-expected.txt +10 -2
- data/ext/vendor/ctags/Tmain/list-pseudo-tags.d/stdout-expected.txt +1 -0
- data/ext/vendor/ctags/Tmain/output-encoding-option.d/tags-expected.txt +1 -0
- data/ext/vendor/ctags/Tmain/output-format-option.d/run.sh +1 -1
- data/ext/vendor/ctags/Tmain/output-format-option.d/stdout-expected.txt +1 -1
- data/ext/vendor/ctags/Tmain/output-input-field-with-no-escape.d/run.sh +20 -0
- data/ext/vendor/ctags/Tmain/output-input-field-with-no-escape.d/stdout-expected.txt +6 -0
- data/ext/vendor/ctags/Tmain/ptag-kind-desc.d/stdout-expected.txt +2 -0
- data/ext/vendor/ctags/Tmain/tags-pseudo-tags.d/stdout-expected.txt +1 -0
- data/ext/vendor/ctags/Tmain/utils.sh +12 -2
- data/ext/vendor/ctags/Units/parser-php.r/php-full-qualified-tags-no-esc.d/args.ctags +4 -0
- data/ext/vendor/ctags/Units/parser-php.r/php-full-qualified-tags-no-esc.d/expected.tags +6 -0
- data/ext/vendor/ctags/Units/parser-php.r/php-full-qualified-tags-no-esc.d/input.php +10 -0
- data/ext/vendor/ctags/docs/contributions.rst +1 -0
- data/ext/vendor/ctags/docs/format.rst +13 -0
- data/ext/vendor/ctags/docs/interactive-mode.rst +61 -0
- data/ext/vendor/ctags/docs/news.rst +16 -1
- data/ext/vendor/ctags/docs/output-format.rst +1 -0
- data/ext/vendor/ctags/docs/output-xref.rst +10 -0
- data/ext/vendor/ctags/main/entry.c +6 -10
- data/ext/vendor/ctags/main/entry.h +1 -1
- data/ext/vendor/ctags/main/field.c +163 -72
- data/ext/vendor/ctags/main/field.h +4 -2
- data/ext/vendor/ctags/main/fmt.c +2 -2
- data/ext/vendor/ctags/main/main.c +5 -5
- data/ext/vendor/ctags/main/options.c +6 -3
- data/ext/vendor/ctags/main/parse.c +1 -1
- data/ext/vendor/ctags/main/ptag.c +4 -0
- data/ext/vendor/ctags/main/ptag.h +1 -0
- data/ext/vendor/ctags/main/writer-ctags.c +110 -34
- data/ext/vendor/ctags/main/writer-etags.c +11 -8
- data/ext/vendor/ctags/main/writer-json.c +18 -8
- data/ext/vendor/ctags/main/writer-xref.c +4 -2
- data/ext/vendor/ctags/main/writer.c +38 -11
- data/ext/vendor/ctags/main/writer.h +19 -7
- data/lib/ctags/universal.rb +1 -1
- data/lib/ctags/version.rb +1 -1
- metadata +10 -2
@@ -16,7 +16,8 @@
|
|
16
16
|
#include "writer.h"
|
17
17
|
|
18
18
|
|
19
|
-
static int writeXrefEntry (
|
19
|
+
static int writeXrefEntry (tagWriter *writer CTAGS_ATTR_UNUSED,
|
20
|
+
MIO * mio, const tagEntryInfo *const tag);
|
20
21
|
|
21
22
|
tagWriter xrefWriter = {
|
22
23
|
.writeEntry = writeXrefEntry,
|
@@ -26,7 +27,8 @@ tagWriter xrefWriter = {
|
|
26
27
|
.useStdoutByDefault = true,
|
27
28
|
};
|
28
29
|
|
29
|
-
static int writeXrefEntry (
|
30
|
+
static int writeXrefEntry (tagWriter *writer CTAGS_ATTR_UNUSED,
|
31
|
+
MIO * mio, const tagEntryInfo *const tag)
|
30
32
|
{
|
31
33
|
int length;
|
32
34
|
static fmtElement *fmt1;
|
@@ -8,21 +8,23 @@
|
|
8
8
|
*/
|
9
9
|
|
10
10
|
#include "general.h"
|
11
|
+
#include "entry.h"
|
11
12
|
#include "writer.h"
|
12
13
|
|
13
|
-
extern tagWriter
|
14
|
+
extern tagWriter uCtagsWriter;
|
15
|
+
extern tagWriter eCtagsWriter;
|
14
16
|
extern tagWriter etagsWriter;
|
15
17
|
extern tagWriter xrefWriter;
|
16
18
|
extern tagWriter jsonWriter;
|
17
19
|
|
18
20
|
static tagWriter *writerTable [WRITER_COUNT] = {
|
19
|
-
[
|
21
|
+
[WRITER_U_CTAGS] = &uCtagsWriter,
|
22
|
+
[WRITER_E_CTAGS] = &eCtagsWriter,
|
20
23
|
[WRITER_ETAGS] = &etagsWriter,
|
21
24
|
[WRITER_XREF] = &xrefWriter,
|
22
25
|
[WRITER_JSON] = &jsonWriter,
|
23
26
|
};
|
24
27
|
|
25
|
-
static void *writerData;
|
26
28
|
static tagWriter *writer;
|
27
29
|
|
28
30
|
extern void setTagWriter (writerType wtype)
|
@@ -39,23 +41,26 @@ extern bool outputFormatUsedStdoutByDefault (void)
|
|
39
41
|
extern void writerSetup (MIO *mio)
|
40
42
|
{
|
41
43
|
if (writer->preWriteEntry)
|
42
|
-
|
44
|
+
writer->private = writer->preWriteEntry (writer, mio);
|
43
45
|
else
|
44
|
-
|
46
|
+
writer->private = NULL;
|
45
47
|
}
|
46
48
|
|
47
|
-
extern
|
49
|
+
extern bool writerTeardown (MIO *mio, const char *filename)
|
48
50
|
{
|
49
51
|
if (writer->postWriteEntry)
|
50
52
|
{
|
51
|
-
|
52
|
-
|
53
|
+
bool r;
|
54
|
+
r = writer->postWriteEntry (writer, mio, filename);
|
55
|
+
writer->private = NULL;
|
56
|
+
return r;
|
53
57
|
}
|
58
|
+
return false;
|
54
59
|
}
|
55
60
|
|
56
61
|
extern int writerWriteTag (MIO * mio, const tagEntryInfo *const tag)
|
57
62
|
{
|
58
|
-
return writer->writeEntry (mio, tag
|
63
|
+
return writer->writeEntry (writer, mio, tag);
|
59
64
|
}
|
60
65
|
|
61
66
|
extern int writerWritePtag (MIO * mio,
|
@@ -67,7 +72,29 @@ extern int writerWritePtag (MIO * mio,
|
|
67
72
|
if (writer->writePtagEntry == NULL)
|
68
73
|
return -1;
|
69
74
|
|
70
|
-
return writer->writePtagEntry (mio, desc, fileName,
|
71
|
-
pattern, parserName
|
75
|
+
return writer->writePtagEntry (writer, mio, desc, fileName,
|
76
|
+
pattern, parserName);
|
72
77
|
|
73
78
|
}
|
79
|
+
|
80
|
+
extern void writerBuildFqTagCache (tagEntryInfo *const tag)
|
81
|
+
{
|
82
|
+
if (writer->buildFqTagCache)
|
83
|
+
writer->buildFqTagCache (writer, tag);
|
84
|
+
}
|
85
|
+
|
86
|
+
|
87
|
+
extern bool ptagMakeCtagsOutputMode (ptagDesc *desc, void *data CTAGS_ATTR_UNUSED)
|
88
|
+
{
|
89
|
+
const char *mode ="";
|
90
|
+
|
91
|
+
if (&uCtagsWriter == writer)
|
92
|
+
mode = "u-ctags";
|
93
|
+
else if (&eCtagsWriter == writer)
|
94
|
+
mode = "e-ctags";
|
95
|
+
|
96
|
+
return writePseudoTag (desc,
|
97
|
+
mode,
|
98
|
+
"u-ctags or e-ctags",
|
99
|
+
NULL);
|
100
|
+
}
|
@@ -20,7 +20,8 @@
|
|
20
20
|
|
21
21
|
typedef enum eWriterType {
|
22
22
|
WRITER_DEFAULT,
|
23
|
-
|
23
|
+
WRITER_U_CTAGS = WRITER_DEFAULT,
|
24
|
+
WRITER_E_CTAGS,
|
24
25
|
WRITER_ETAGS,
|
25
26
|
WRITER_XREF,
|
26
27
|
WRITER_JSON,
|
@@ -30,21 +31,29 @@ typedef enum eWriterType {
|
|
30
31
|
struct sTagWriter;
|
31
32
|
typedef struct sTagWriter tagWriter;
|
32
33
|
struct sTagWriter {
|
33
|
-
int (* writeEntry) (MIO * mio, const tagEntryInfo *const tag
|
34
|
-
int (* writePtagEntry) (MIO * mio, const ptagDesc *desc,
|
34
|
+
int (* writeEntry) (tagWriter *writer, MIO * mio, const tagEntryInfo *const tag);
|
35
|
+
int (* writePtagEntry) (tagWriter *writer, MIO * mio, const ptagDesc *desc,
|
35
36
|
const char *const fileName,
|
36
37
|
const char *const pattern,
|
37
|
-
const char *const parserName
|
38
|
-
void * (* preWriteEntry) (MIO * mio);
|
39
|
-
|
38
|
+
const char *const parserName);
|
39
|
+
void * (* preWriteEntry) (tagWriter *writer, MIO * mio);
|
40
|
+
|
41
|
+
/* Returning TRUE means the output file may be shrunk.
|
42
|
+
In such case the callee may do truncate output file. */
|
43
|
+
bool (* postWriteEntry) (tagWriter *writer, MIO * mio, const char* filename);
|
44
|
+
void (* buildFqTagCache) (tagWriter *writer, tagEntryInfo *const tag);
|
40
45
|
bool useStdoutByDefault;
|
41
46
|
|
47
|
+
/* The value returned from preWriteEntry is stored `private' field.
|
48
|
+
The value must be released in postWriteEntry. */
|
49
|
+
void *private;
|
42
50
|
writerType type;
|
51
|
+
|
43
52
|
};
|
44
53
|
|
45
54
|
extern void setTagWriter (writerType otype);
|
46
55
|
extern void writerSetup (MIO *mio);
|
47
|
-
extern
|
56
|
+
extern bool writerTeardown (MIO *mio, const char *filename);
|
48
57
|
|
49
58
|
int writerWriteTag (MIO * mio, const tagEntryInfo *const tag);
|
50
59
|
int writerWritePtag (MIO * mio,
|
@@ -53,6 +62,8 @@ int writerWritePtag (MIO * mio,
|
|
53
62
|
const char *const pattern,
|
54
63
|
const char *const parserName);
|
55
64
|
|
65
|
+
extern void writerBuildFqTagCache (tagEntryInfo *const tag);
|
66
|
+
|
56
67
|
extern bool outputFormatUsedStdoutByDefault (void);
|
57
68
|
|
58
69
|
extern int makePatternStringCommon (const tagEntryInfo *const tag,
|
@@ -64,5 +75,6 @@ extern void truncateTagLine (char *const line, const char *const token,
|
|
64
75
|
extern void abort_if_ferror(MIO *const fp);
|
65
76
|
|
66
77
|
extern bool ptagMakeJsonOutputVersion (ptagDesc *desc, void *data CTAGS_ATTR_UNUSED);
|
78
|
+
extern bool ptagMakeCtagsOutputMode (ptagDesc *desc, void *data CTAGS_ATTR_UNUSED);
|
67
79
|
|
68
80
|
#endif
|
data/lib/ctags/universal.rb
CHANGED
data/lib/ctags/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ctags.rb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Aman Gupta
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-12-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: posix-spawn
|
@@ -175,6 +175,7 @@ files:
|
|
175
175
|
- ext/vendor/ctags/Tmain/invalid-encoding-option.d/stderr-expected.txt
|
176
176
|
- ext/vendor/ctags/Tmain/invalid-encoding-option.d/stdout-expected.txt
|
177
177
|
- ext/vendor/ctags/Tmain/json-output-format.d/input.c
|
178
|
+
- ext/vendor/ctags/Tmain/json-output-format.d/input.go
|
178
179
|
- ext/vendor/ctags/Tmain/json-output-format.d/input.py
|
179
180
|
- ext/vendor/ctags/Tmain/json-output-format.d/run.sh
|
180
181
|
- ext/vendor/ctags/Tmain/json-output-format.d/stdout-expected.txt
|
@@ -372,6 +373,8 @@ files:
|
|
372
373
|
- ext/vendor/ctags/Tmain/output-format-option.d/input.c
|
373
374
|
- ext/vendor/ctags/Tmain/output-format-option.d/run.sh
|
374
375
|
- ext/vendor/ctags/Tmain/output-format-option.d/stdout-expected.txt
|
376
|
+
- ext/vendor/ctags/Tmain/output-input-field-with-no-escape.d/run.sh
|
377
|
+
- ext/vendor/ctags/Tmain/output-input-field-with-no-escape.d/stdout-expected.txt
|
375
378
|
- ext/vendor/ctags/Tmain/pattern-length-limit.d/input.java
|
376
379
|
- ext/vendor/ctags/Tmain/pattern-length-limit.d/run.sh
|
377
380
|
- ext/vendor/ctags/Tmain/pattern-length-limit.d/stdout-expected.txt
|
@@ -1486,6 +1489,9 @@ files:
|
|
1486
1489
|
- ext/vendor/ctags/Units/parser-php.r/php-classes.d/args.ctags
|
1487
1490
|
- ext/vendor/ctags/Units/parser-php.r/php-classes.d/expected.tags
|
1488
1491
|
- ext/vendor/ctags/Units/parser-php.r/php-classes.d/input.php
|
1492
|
+
- ext/vendor/ctags/Units/parser-php.r/php-full-qualified-tags-no-esc.d/args.ctags
|
1493
|
+
- ext/vendor/ctags/Units/parser-php.r/php-full-qualified-tags-no-esc.d/expected.tags
|
1494
|
+
- ext/vendor/ctags/Units/parser-php.r/php-full-qualified-tags-no-esc.d/input.php
|
1489
1495
|
- ext/vendor/ctags/Units/parser-php.r/php-full-qualified-tags.d/args.ctags
|
1490
1496
|
- ext/vendor/ctags/Units/parser-php.r/php-full-qualified-tags.d/expected.tags
|
1491
1497
|
- ext/vendor/ctags/Units/parser-php.r/php-full-qualified-tags.d/input.php
|
@@ -2224,6 +2230,7 @@ files:
|
|
2224
2230
|
- ext/vendor/ctags/docs/guessing.rst
|
2225
2231
|
- ext/vendor/ctags/docs/index.rst
|
2226
2232
|
- ext/vendor/ctags/docs/input-text-stream.svg
|
2233
|
+
- ext/vendor/ctags/docs/interactive-mode.rst
|
2227
2234
|
- ext/vendor/ctags/docs/internal.rst
|
2228
2235
|
- ext/vendor/ctags/docs/news.rst
|
2229
2236
|
- ext/vendor/ctags/docs/noise.rst
|
@@ -2233,6 +2240,7 @@ files:
|
|
2233
2240
|
- ext/vendor/ctags/docs/output-format.rst
|
2234
2241
|
- ext/vendor/ctags/docs/output-json.rst
|
2235
2242
|
- ext/vendor/ctags/docs/output-tag-stream.svg
|
2243
|
+
- ext/vendor/ctags/docs/output-xref.rst
|
2236
2244
|
- ext/vendor/ctags/docs/parser-asm.rst
|
2237
2245
|
- ext/vendor/ctags/docs/parser-cxx.rst
|
2238
2246
|
- ext/vendor/ctags/docs/parser-html.rst
|