geany  1.38
About: Geany is a text editor (using GTK2) with basic features of an integrated development environment (syntax highlighting, code folding, symbol name auto-completion, ...). F: office T: editor programming GTK+ IDE
  Fossies Dox: geany-1.38.tar.bz2  ("unofficial" and yet experimental doxygen-generated source code documentation)  

entry_p.h
Go to the documentation of this file.
1/*
2* Copyright (c) 2017, Red Hat, Inc.
3* Copyright (c) 2017, Masatake YAMATO
4*
5* This source code is released for free distribution under the terms of the
6* GNU General Public License version 2 or (at your option) any later version.
7*
8* main part private interface to entry.c
9*/
10#ifndef CTAGS_PRIVATE_ENTRY_H
11#define CTAGS_PRIVATE_ENTRY_H
12
13/*
14* INCLUDE FILES
15*/
16#include "general.h" /* must always come first */
17#include "entry.h"
18#include "types.h"
19
20/*
21* FUNCTION PROTOTYPES
22*/
23extern const kindDefinition* getTagKind(const tagEntryInfo *const tag);
24extern char getTagKindLetter(const tagEntryInfo *const tag);
25extern const char* getTagKindName(const tagEntryInfo *const tag);
26
27extern const roleDefinition* getTagRole(const tagEntryInfo *const tag, int roleIndex);
28
29extern void freeTagFileResources (void);
30extern const char *tagFileName (void);
31extern void openTagFile (void);
32extern void closeTagFile (const bool resize);
33extern void setupWriter (void *writerClientData);
34extern bool teardownWriter (const char *inputFilename);
35
36extern unsigned long numTagsAdded(void);
37extern void setNumTagsAdded (unsigned long nadded);
38extern unsigned long numTagsTotal(void);
39extern unsigned long maxTagsLine(void);
40extern void invalidatePatternCache(void);
41extern void tagFilePosition (MIOPos *p);
42extern void setTagFilePosition (MIOPos *p);
43extern const char* getTagFileDirectory (void);
44extern void getTagScopeInformation (tagEntryInfo *const tag,
45 const char **kind, const char **name);
46
47/* Getting line associated with tag */
48extern char *readLineFromBypassForTag (vString *const vLine, const tagEntryInfo *const tag,
49 long *const pSeekValue);
50
51/* Generating pattern associated tag, caller must do eFree for the returned value. */
52extern char* makePatternString (const tagEntryInfo *const tag);
53
54
55/* language is optional: can be NULL. */
56extern bool writePseudoTag (const ptagDesc *pdesc,
57 const char *const fileName,
58 const char *const pattern,
59 const char *const parserName);
60
61void corkTagFile(unsigned int corkFlags);
62void uncorkTagFile(void);
63
64extern void makeFileTag (const char *const fileName);
65
66extern const tagField* getParserFieldForIndex (const tagEntryInfo * tag, int index);
67
68
70{
71 if (roleIndex == ROLE_DEFINITION_INDEX)
72 return 0;
73 else
74 return ((roleBitsType)1) << roleIndex;
75}
76
77#endif /* CTAGS_PRIVATE_ENTRY_H */
gint index
Definition: build.c:2680
const gchar * name
Definition: document.c:3219
uint64_t roleBitsType
Definition: entry.h:39
#define ROLE_DEFINITION_INDEX
Definition: entry.h:90
void tagFilePosition(MIOPos *p)
Definition: entry.c:2002
void freeTagFileResources(void)
Definition: entry.c:142
unsigned long numTagsAdded(void)
Definition: entry.c:1977
void getTagScopeInformation(tagEntryInfo *const tag, const char **kind, const char **name)
Definition: entry.c:803
void makeFileTag(const char *const fileName)
Definition: entry.c:182
const char * tagFileName(void)
Definition: entry.c:149
const tagField * getParserFieldForIndex(const tagEntryInfo *tag, int index)
Definition: entry.c:996
void corkTagFile(unsigned int corkFlags)
Definition: entry.c:1588
void setupWriter(void *writerClientData)
Definition: entry.c:1457
void setTagFilePosition(MIOPos *p)
Definition: entry.c:2013
static roleBitsType makeRoleBit(int roleIndex)
Definition: entry_p.h:69
void invalidatePatternCache(void)
Definition: entry.c:1997
char * readLineFromBypassForTag(vString *const vLine, const tagEntryInfo *const tag, long *const pSeekValue)
Definition: entry.c:724
bool writePseudoTag(const ptagDesc *pdesc, const char *const fileName, const char *const pattern, const char *const parserName)
Definition: entry.c:1568
const kindDefinition * getTagKind(const tagEntryInfo *const tag)
Definition: entry_private.c:15
void setNumTagsAdded(unsigned long nadded)
Definition: entry.c:1982
void closeTagFile(const bool resize)
Definition: entry.c:605
const char * getTagKindName(const tagEntryInfo *const tag)
Definition: entry_private.c:26
const roleDefinition * getTagRole(const tagEntryInfo *const tag, int roleIndex)
Definition: entry_private.c:32
void openTagFile(void)
Definition: entry.c:379
char * makePatternString(const tagEntryInfo *const tag)
Definition: entry.c:921
char getTagKindLetter(const tagEntryInfo *const tag)
Definition: entry_private.c:20
unsigned long maxTagsLine(void)
Definition: entry.c:1992
const char * getTagFileDirectory(void)
Definition: entry.c:2024
void uncorkTagFile(void)
Definition: entry.c:1600
bool teardownWriter(const char *inputFilename)
Definition: entry.c:1462
unsigned long numTagsTotal(void)
Definition: entry.c:1987
#define CTAGS_INLINE
Definition: inline.h:23
MIOPos:
Definition: mio.h:101