zeek/src/input.h
Jon Siwek c4ca6f098c Changes to scanner and parser to allow record field comments.
The scanner can now be told to start/stop producing new token types that
assist in documenting record field types (and eventually enums also).

TOK_DOC:
    Produced on "##" style comments; documents the field that follows.

TOK_POST_DOC:
    Produced on "##<" style comments; documents the previous field.
2011-03-14 13:10:49 -05:00

56 lines
1.2 KiB
C++

// $Id: input.h 6219 2008-10-01 05:39:07Z vern $
//
// See the file "COPYING" in the main distribution directory for copyright.
#ifndef input_h
#define input_h
#include <vector>
#include <string>
using namespace std;
#include "BroList.h"
extern int yyparse();
extern int yydebug;
extern int brolex();
extern char last_tok[128];
extern void add_input_file(const char* file);
// Adds the substrings (using the given delimiter) in a string to the
// given namelist.
extern void add_to_name_list(char* s, char delim, name_list& nl);
extern void begin_RE();
extern void end_RE();
extern void do_atif(Expr* expr);
extern void do_atifdef(const char* id);
extern void do_atifndef(const char* id);
extern void do_atelse();
extern void do_atendif();
extern void do_doc_token_start();
extern void do_doc_token_stop();
extern int line_number;
extern const char* filename;
extern int bro_argc;
extern char** bro_argv;
extern const char* prog;
extern name_list prefixes; // -p flag
extern char* command_line_policy; // -e flag
extern vector<string> params;
class Stmt;
extern Stmt* stmts; // global statements
extern int optimize;
extern int nwarn;
extern int nerr;
extern int nruntime;
#endif