edbee - Qt Editor Library v0.11.1
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
edbee::TmLanguageParser Class Reference

For parsing a Textmate Language. More...

#include <tmlanguageparser.h>

+ Collaboration diagram for edbee::TmLanguageParser:

Public Member Functions

 TmLanguageParser ()
 Parses a textmate language.
 
TextGrammarparsePlist (QIODevice *device)
 Parses a PList (XML Grammar file definition)
 
TextGrammarparseJson (QIODevice *device)
 Parses a JSON grammar file definition.
 
TextGrammarparse (QIODevice *device, bool json=false)
 reads the content of a single file
 
TextGrammarparse (QFile &file)
 Parses the given file.
 
TextGrammarparse (const QString &fileName)
 parses the given grammar file
 
QString lastErrorMessage () const
 returns the last error message
 

Protected Member Functions

void setLastErrorMessage (const QString &str)
 Sets the last error message.
 
void addCapturesToGrammarRule (TextGrammarRule *rule, QHash< QString, QVariant > captures, bool endCapture=false)
 sets the captures
 
void addPatternsToGrammarRule (TextGrammarRule *rule, QList< QVariant > patterns)
 Adds all patterns to the grammar rules.
 
TextGrammarRulecreateGrammarRule (TextGrammar *grammar, const QVariant &data)
 creates a grammar rue
 
TextGrammarcreateLanguage (QVariant &data)
 

Detailed Description

For parsing a Textmate Language.

Constructor & Destructor Documentation

◆ TmLanguageParser()

edbee::TmLanguageParser::TmLanguageParser ( )

Parses a textmate language.

Member Function Documentation

◆ addCapturesToGrammarRule()

void edbee::TmLanguageParser::addCapturesToGrammarRule ( TextGrammarRule * rule,
QHash< QString, QVariant > captures,
bool endCapture = false )
protected

sets the captures

◆ addPatternsToGrammarRule()

void edbee::TmLanguageParser::addPatternsToGrammarRule ( TextGrammarRule * rule,
QList< QVariant > patterns )
protected

Adds all patterns to the grammar rules.

◆ createGrammarRule()

TextGrammarRule * edbee::TmLanguageParser::createGrammarRule ( TextGrammar * grammar,
const QVariant & data )
protected

creates a grammar rue

Todo
: contentScopeName

◆ createLanguage()

TextGrammar * edbee::TmLanguageParser::createLanguage ( QVariant & data)
protected

◆ lastErrorMessage()

QString edbee::TmLanguageParser::lastErrorMessage ( ) const

returns the last error message

◆ parse() [1/3]

TextGrammar * edbee::TmLanguageParser::parse ( const QString & fileName)

parses the given grammar file

Parameters
filethe file to read
Returns
the language grammar or 0 on error

◆ parse() [2/3]

TextGrammar * edbee::TmLanguageParser::parse ( QFile & file)

Parses the given file.

◆ parse() [3/3]

TextGrammar * edbee::TmLanguageParser::parse ( QIODevice * device,
bool json = false )

reads the content of a single file

Parameters
devicethe device to read from. The device NEEDS to be open!!
jsonuse the json parser
Returns
the language grammar or nullptr on error

◆ parseJson()

TextGrammar * edbee::TmLanguageParser::parseJson ( QIODevice * device)

Parses a JSON grammar file definition.

◆ parsePlist()

TextGrammar * edbee::TmLanguageParser::parsePlist ( QIODevice * device)

Parses a PList (XML Grammar file definition)

◆ setLastErrorMessage()

void edbee::TmLanguageParser::setLastErrorMessage ( const QString & str)
protected

Sets the last error message.


The documentation for this class was generated from the following files: