⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 read.h

📁 ctags-5.5.4.tar.gz,一个很好的代码开发以及编辑源码
💻 H
字号:
/**   $Id: read.h,v 1.4 2002/02/17 06:04:32 darren Exp $**   Copyright (c) 1998-2002, Darren Hiebert**   This source code is released for free distribution under the terms of the*   GNU General Public License.**   External interface to read.c*/#ifndef _READ_H#define _READ_H#if defined(FILE_WRITE) || defined(VAXC)# define CONST_FILE#else# define CONST_FILE const#endif/**   INCLUDE FILES*/#include "general.h"	/* must always come first */#include <stdio.h>#include <ctype.h>#include "parse.h"#include "vstring.h"/**   MACROS*/#define getInputLineNumber()	File.lineNumber#define getInputFileName()	vStringValue (File.source.name)#define getInputFilePosition()	File.filePosition#define getSourceFileName()	vStringValue (File.source.name)#define getSourceFileTagPath()	File.source.tagPath#define getSourceLanguage()	File.source.language#define getSourceLanguageName()	getLanguageName (File.source.language)#define getSourceLineNumber()	File.source.lineNumber#define isLanguage(lang)	(boolean)((lang) == File.source.language)#define isHeaderFile()		File.source.isHeader/**   DATA DECLARATIONS*/enum eCharacters {    /*  White space characters.     */    SPACE	= ' ',    NEWLINE	= '\n',    CRETURN	= '\r',    FORMFEED	= '\f',    TAB		= '\t',    VTAB	= '\v',    /*  Some hard to read characters.     */    DOUBLE_QUOTE  = '"',    SINGLE_QUOTE  = '\'',    BACKSLASH	  = '\\',    STRING_SYMBOL = ('S' + 0x80),    CHAR_SYMBOL	  = ('C' + 0x80)};/*  Maintains the state of the current source file. */typedef struct sInputFile {    vString	*name;		/* name of input file */    vString	*path;		/* path of input file (if any) */    vString	*line;		/* last line read from file */    const unsigned char* currentLine;	/* current line being worked on */    FILE	*fp;		/* stream used for reading the file */    unsigned long lineNumber;	/* line number in the input file */    fpos_t	filePosition;	/* file position of current line */    int		ungetch;	/* a single character that was ungotten */    boolean	eof;		/* have we reached the end of file? */    boolean	newLine;	/* will the next character begin a new line? */    langType	language;	/* language of input file */    /*  Contains data pertaining to the original source file in which the tag     *  was defined. This may be different from the input file when #line     *  directives are processed (i.e. the input file is preprocessor output).     */    struct sSource {	vString *name;		/* name to report for source file */	char    *tagPath;	/* path of source file relative to tag file */	unsigned long lineNumber;/* line number in the source file */	boolean	 isHeader;	/* is source file a header file? */	langType language;	/* language of source file */    } source;} inputFile;/**   GLOBAL VARIABLES*/extern CONST_FILE inputFile File;/**   FUNCTION PROTOTYPES*/extern void freeSourceFileResources (void);extern boolean fileOpen (const char *const fileName, const langType language);extern boolean fileEOF (void);extern void fileClose (void);extern int fileGetc (void);extern void fileUngetc (int c);extern const unsigned char *fileReadLine (void);extern char *readLine (vString *const vLine, FILE *const fp);extern char *readSourceLine (vString *const vLine, fpos_t location, long *const pSeekValue);#endif	/* _READ_H *//* vi:set tabstop=8 shiftwidth=4: */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -