doxygen
pycode.h
1 /******************************************************************************
2  *
3  * Copyright (C) 1997-2020 by Dimitri van Heesch.
4  *
5  * Permission to use, copy, modify, and distribute this software and its
6  * documentation under the terms of the GNU General Public License is hereby
7  * granted. No representations are made about the suitability of this software
8  * for any purpose. It is provided "as is" without express or implied warranty.
9  * See the GNU General Public License for more details.
10  *
11  * Documents produced by Doxygen are derivative works derived from the
12  * input used in their production; they are not affected by this license.
13  *
14  */
15 /* This code is based on the work done by the MoxyPyDoxy team
16  * (Linda Leong, Mike Rivera, Kim Truong, and Gabriel Estrada)
17  * in Spring 2005 as part of CS 179E: Compiler Design Project
18  * at the University of California, Riverside; the course was
19  * taught by Peter H. Froehlich <phf@acm.org>.
20  */
21 
22 
23 #ifndef PYCODE_H
24 #define PYCODE_H
25 
26 #include "parserintf.h"
27 
29 class FileDef;
30 class MemberDef;
31 class QCString;
32 class Definition;
33 
35 {
36  public:
38  virtual ~PythonCodeParser();
39  void parseCode(CodeOutputInterface &codeOutIntf,
40  const QCString &scopeName,
41  const QCString &input,
42  SrcLangExt lang,
43  bool isExampleBlock,
44  const QCString &exampleName=QCString(),
45  const FileDef *fileDef=0,
46  int startLine=-1,
47  int endLine=-1,
48  bool inlineFragment=FALSE,
49  const MemberDef *memberDef=0,
50  bool showLineNumbers=TRUE,
51  const Definition *searchCtx=0,
52  bool collectXrefs=TRUE
53  );
54  void resetCodeParserState();
55  private:
56  struct Private;
57  std::unique_ptr<Private> p;
58 };
59 
60 
61 #endif
The common base class of all entity definitions found in the sources.
Definition: definition.h:76
A model of a class/file/namespace member symbol.
Definition: memberdef.h:45
A model of a file symbol.
Definition: filedef.h:73
SrcLangExt
Language as given by extension.
Definition: types.h:41
Definition: pycode.h:34
This is an alternative implementation of QCString.
Definition: qcstring.h:108
Output interface for code parser.
Definition: outputgen.h:61
void parseCode(CodeOutputInterface &codeOutIntf, const QCString &scopeName, const QCString &input, SrcLangExt lang, bool isExampleBlock, const QCString &exampleName=QCString(), const FileDef *fileDef=0, int startLine=-1, int endLine=-1, bool inlineFragment=FALSE, const MemberDef *memberDef=0, bool showLineNumbers=TRUE, const Definition *searchCtx=0, bool collectXrefs=TRUE)
Parses a source file or fragment with the goal to produce highlighted and cross-referenced output...
Abstract interface for code parsers.
Definition: parserintf.h:83
void resetCodeParserState()
Resets the state of the code parser.