C# Class Pegasus.Compiler.CodeGenerator

Inheritance: ExpressionTreeWalker
Afficher le fichier Open project: otac0n/Pegasus

Méthodes publiques

Méthode Description
CodeGenerator ( TextWriter writer, object>.Dictionary types, HashSet leftRecursiveRules ) : System.Collections.Generic
WalkGrammar ( Grammar grammar ) : void

Méthodes protégées

Méthode Description
WalkAndCodeExpression ( AndCodeExpression andCodeExpression ) : void
WalkAndExpression ( AndExpression andExpression ) : void
WalkChoiceExpression ( ChoiceExpression choiceExpression ) : void
WalkClassExpression ( ClassExpression classExpression ) : void
WalkCodeExpression ( CodeExpression codeExpression ) : void
WalkLiteralExpression ( LiteralExpression literalExpression ) : void
WalkNameExpression ( NameExpression nameExpression ) : void
WalkNotCodeExpression ( NotCodeExpression notCodeExpression ) : void
WalkNotExpression ( NotExpression notExpression ) : void
WalkPrefixedExpression ( PrefixedExpression prefixedExpression ) : void
WalkRepetitionExpression ( RepetitionExpression repetitionExpression ) : void
WalkRule ( Rule rule ) : void
WalkSequenceExpression ( SequenceExpression sequenceExpression ) : void
WalkWildcardExpression ( WildcardExpression wildcardExpression ) : void

Private Methods

Méthode Description
CreateVariable ( string prefix ) : string
EscapeName ( object name ) : string
ToLiteral ( string input ) : string
WalkExpression ( Expression expression, TextWriter writer, string indentation ) : void
WalkGrammar ( Grammar grammar, TextWriter writer, string indentation ) : void
WalkRule ( Rule rule, TextWriter writer, string indentation ) : void

Method Details

CodeGenerator() public méthode

public CodeGenerator ( TextWriter writer, object>.Dictionary types, HashSet leftRecursiveRules ) : System.Collections.Generic
writer System.IO.TextWriter
types object>.Dictionary
leftRecursiveRules HashSet
Résultat System.Collections.Generic

WalkAndCodeExpression() protected méthode

protected WalkAndCodeExpression ( AndCodeExpression andCodeExpression ) : void
andCodeExpression Pegasus.Expressions.AndCodeExpression
Résultat void

WalkAndExpression() protected méthode

protected WalkAndExpression ( AndExpression andExpression ) : void
andExpression Pegasus.Expressions.AndExpression
Résultat void

WalkChoiceExpression() protected méthode

protected WalkChoiceExpression ( ChoiceExpression choiceExpression ) : void
choiceExpression Pegasus.Expressions.ChoiceExpression
Résultat void

WalkClassExpression() protected méthode

protected WalkClassExpression ( ClassExpression classExpression ) : void
classExpression Pegasus.Expressions.ClassExpression
Résultat void

WalkCodeExpression() protected méthode

protected WalkCodeExpression ( CodeExpression codeExpression ) : void
codeExpression Pegasus.Expressions.CodeExpression
Résultat void

WalkGrammar() public méthode

public WalkGrammar ( Grammar grammar ) : void
grammar Pegasus.Expressions.Grammar
Résultat void

WalkLiteralExpression() protected méthode

protected WalkLiteralExpression ( LiteralExpression literalExpression ) : void
literalExpression Pegasus.Expressions.LiteralExpression
Résultat void

WalkNameExpression() protected méthode

protected WalkNameExpression ( NameExpression nameExpression ) : void
nameExpression Pegasus.Expressions.NameExpression
Résultat void

WalkNotCodeExpression() protected méthode

protected WalkNotCodeExpression ( NotCodeExpression notCodeExpression ) : void
notCodeExpression Pegasus.Expressions.NotCodeExpression
Résultat void

WalkNotExpression() protected méthode

protected WalkNotExpression ( NotExpression notExpression ) : void
notExpression Pegasus.Expressions.NotExpression
Résultat void

WalkPrefixedExpression() protected méthode

protected WalkPrefixedExpression ( PrefixedExpression prefixedExpression ) : void
prefixedExpression Pegasus.Expressions.PrefixedExpression
Résultat void

WalkRepetitionExpression() protected méthode

protected WalkRepetitionExpression ( RepetitionExpression repetitionExpression ) : void
repetitionExpression Pegasus.Expressions.RepetitionExpression
Résultat void

WalkRule() protected méthode

protected WalkRule ( Rule rule ) : void
rule Pegasus.Expressions.Rule
Résultat void

WalkSequenceExpression() protected méthode

protected WalkSequenceExpression ( SequenceExpression sequenceExpression ) : void
sequenceExpression Pegasus.Expressions.SequenceExpression
Résultat void

WalkWildcardExpression() protected méthode

protected WalkWildcardExpression ( WildcardExpression wildcardExpression ) : void
wildcardExpression WildcardExpression
Résultat void