DynGenPar
Dynamic Generalized Parser
Classes | Typedefs | Enumerations | Functions | Variables
DynGenPar Namespace Reference

Classes

class  ByteTokenSource
class  TextByteLexerStateData
 You should not have to use this class directly, ever. More...
class  TextByteTokenSource
struct  NextTokenConstraints
 rule constraints affecting the next token, for scannerless parsing More...
class  Rule
struct  Cfg
 An object representing a CFG (or a PMCFG in our internal representation) More...
struct  MultiPrediction
 multi-token predictions More...
struct  ConstrainedMultiPrediction
 multi-token predictions with next token constraints More...
struct  FullRule
 full rule as found in the initial graph More...
class  Alternative
struct  Node
 node in the parse tree More...
class  PseudoCatScopeData
class  PseudoCatScope
struct  Match
 (possibly partial) match More...
struct  ActionInfo
 data passed to parser actions More...
class  Action
 interface for parser actions More...
class  StackItemData
class  UnifiedStackItemData
class  StackItem
class  StackItemType0
 type 0 item: during match, we're waiting for a token to shift More...
class  StackItemType1
 type 1 item: during type 0 item processing, we're executing a reduce More...
class  StackItemType2
 type 2 item: during reduce, we're recursively executing another reduce More...
class  StackItemType3
 type 3 item: during matchRemaining, we're executing a match More...
class  StackItemType4
 type 4 item: during reduce, we're executing a matchRemaining More...
class  StackItemType5
 type 5 item: during match (of an MCFG constraint), we're executing a matchRemaining More...
class  StackItemType6
 type 6 item: during match, we're matching a P constraint More...
class  AbstractLexerStateData
 API for stateful lexers to save their state for rewinding. More...
class  LexerState
class  TokenSource
class  ListTokenSource
struct  TextPosition
 text position More...
struct  Term
 term in the expression of a component of a PMCFG function More...
class  Sequence
 component of a PMCFG function, a sequence of terms More...
class  Function
 PMCFG function. More...
struct  Pmcfg
 PMCFG. More...
struct  PmcfgComponentInfo
 attached to the parse trees as rule labels to allow obtaining syntax trees More...
struct  ParseState
 parse state struct, for bindings More...
class  Parser
 main class More...
class  FlexLexerTokenSource
struct  Pgf
 representation of the information in .pgf files in a format we can process More...
class  PgfParser
 parser for PGF grammars More...

Typedefs

typedef QString Cat
 Category type: string or integer depending on DYNGENPAR_INTEGER_CATEGORIES.
typedef const CatCatArg
 Category type (string or integer) when passed as an argument.
typedef QHash< Cat, QList< Rule > > RuleSet
typedef QSet< CatTokenSet
typedef QSet< CatPredictions
typedef QMultiHash< QList< Cat >
, MultiPrediction
MultiPredictions
typedef QMultiHash< Cat,
NextTokenConstraints
ConstrainedPredictions
typedef QMultiHash< QList< Cat >
, ConstrainedMultiPrediction
ConstrainedMultiPredictions

Enumerations

enum  PgfReservedTokens {
  PgfTokenEpsilon, PgfTokenLexError, PgfTokenVar, PgfTokenFloat,
  PgfTokenInt, PgfTokenString
}

Functions

uint qHash (const NextTokenConstraints &nextTokenConstraints)
 simple hash function for next token constraints
Node parseTreeToPmcfgSyntaxTree (const Node &parseTree)
 converts a parse tree obtained from a PMCFG to a PMCFG syntax tree
template<class MultiHashType >
QHash< typename
MultiHashType::key_type, QList
< typename
MultiHashType::mapped_type > > 
multiHashToListHash (const MultiHashType &multiHash)
 mapping from QMultiHash to QHash with list value for the Java bindings
uint qHash (const PseudoCatScope &scope)

Variables

STATIC const char *const PreludeBind = "&+"

Typedef Documentation

typedef QString DynGenPar::Cat

Category type: string or integer depending on DYNGENPAR_INTEGER_CATEGORIES.

If DYNGENPAR_INTEGER_CATEGORIES is defined, this typedef is defined as:

  typedef int Cat;

instead.

Definition at line 57 of file dyngenpar.h.

typedef const Cat& DynGenPar::CatArg

Category type (string or integer) when passed as an argument.

If DYNGENPAR_INTEGER_CATEGORIES is defined, this typedef is defined as:

  typedef int CatArg;

instead.

This typedef is used for maximum efficiency, to pass strings by reference, but integers by value.

Definition at line 69 of file dyngenpar.h.

Definition at line 215 of file dyngenpar.h.

Definition at line 192 of file dyngenpar.h.

Definition at line 191 of file dyngenpar.h.

typedef QSet<Cat> DynGenPar::Predictions

Definition at line 175 of file dyngenpar.h.

typedef QHash<Cat, QList<Rule> > DynGenPar::RuleSet

Definition at line 156 of file dyngenpar.h.

typedef QSet<Cat> DynGenPar::TokenSet

Definition at line 157 of file dyngenpar.h.


Enumeration Type Documentation

Enumerator:
PgfTokenEpsilon 
PgfTokenLexError 
PgfTokenVar 
PgfTokenFloat 
PgfTokenInt 
PgfTokenString 

Definition at line 39 of file pgf.h.


Function Documentation

template<class MultiHashType >
QHash<typename MultiHashType::key_type, QList<typename MultiHashType::mapped_type> > DynGenPar::multiHashToListHash ( const MultiHashType &  multiHash)

mapping from QMultiHash to QHash with list value for the Java bindings

Definition at line 76 of file dyngenpar.h.

Node DynGenPar::parseTreeToPmcfgSyntaxTree ( const Node &  parseTree)

converts a parse tree obtained from a PMCFG to a PMCFG syntax tree

Definition at line 528 of file dyngenpar.cpp.

uint DynGenPar::qHash ( const NextTokenConstraints &  nextTokenConstraints)

simple hash function for next token constraints

Definition at line 441 of file dyngenpar.cpp.

uint DynGenPar::qHash ( const PseudoCatScope &  scope) [inline]

Definition at line 342 of file dyngenpar.h.


Variable Documentation

STATIC const char* const DynGenPar::PreludeBind = "&+"

Definition at line 45 of file pgf.h.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines