Source-highlight Library
|
Highlights the contents of a file relying on a SourceHighlighter. More...
#include <sourcefilehighlighter.h>
Public Member Functions | |
SourceFileHighlighter (const std::string &file, SourceHighlighter *sourceHighlighter, BufferedOutput *output) | |
void | setDebugPolicy (FileHighlighterDebug p) |
void | setPreformatter (PreFormatter *pf) |
void | setContextFormatter (Formatter *cf) |
void | setLineNumGenerator (LineNumGenerator *lG) |
void | setLinePrefix (const std::string &prefix) |
void | setRangeSeparator (const std::string &rangeSep) |
The range separator will be automatically preformatted to deal with the specific output format. More... | |
const LineRanges * | getLineRanges () const |
void | setLineRanges (LineRanges *lr) |
void | setRegexRanges (RegexRanges *rr) |
void | highlight () |
Performs the highlighting; Once the highlighting is finished, this object can be re-used. | |
void | highlight (std::istream &is) |
Performs the highlighting of the contents of the given input stream; Once the highlighting is finished, this object can be re-used. More... | |
void | highlight (const std::string &is) |
Performs the highlighting of the contents of the given string; Once the highlighting is finished, this object can be re-used. More... | |
Private Attributes | |
const std::string | fileName |
the name of the file to highlight | |
SourceHighlighter * | sourceHighlighter |
the initial regexp state | |
BufferedOutput * | output |
the output object | |
FileHighlighterDebug | debugPolicy |
debugging policy | |
PreFormatter * | preformatter |
the preformatter for characters, e.g., for | |
LineNumGenerator * | lineNumGenerator |
for generation of line numbers (if not null) | |
LineRanges * | lineRanges |
if not null, it detects whether a line is in the stored ranges | |
RegexRanges * | regexRanges |
if not null, it detects whether a line is in the stored ranges | |
Formatter * | contextFormatter |
the formatter for possible context lines | |
std::string | linePrefix |
a prefix to be generated in front of each formatted code line | |
std::string | rangeSeparator |
if specified, a string to be printed between two ranges | |
Highlights the contents of a file relying on a SourceHighlighter.
srchilite::SourceFileHighlighter::SourceFileHighlighter | ( | const std::string & | file, |
SourceHighlighter * | sourceHighlighter, | ||
BufferedOutput * | output | ||
) |
file | the name of the file to highlight; if the filename is empty then we will process the standard input |
sourceHighlighter | the highlighter to highlight paragraphs |
output | the output object used to write |
void srchilite::SourceFileHighlighter::highlight | ( | std::istream & | is | ) |
Performs the highlighting of the contents of the given input stream; Once the highlighting is finished, this object can be re-used.
is |
void srchilite::SourceFileHighlighter::highlight | ( | const std::string & | is | ) |
Performs the highlighting of the contents of the given string; Once the highlighting is finished, this object can be re-used.
is |
void srchilite::SourceFileHighlighter::setRangeSeparator | ( | const std::string & | rangeSep | ) |
The range separator will be automatically preformatted to deal with the specific output format.
rangeSep |