org.sablecc.sablecc
Class InternalTransformationsToGrammar

java.lang.Object
  extended by org.sablecc.sablecc.analysis.AnalysisAdapter
      extended by org.sablecc.sablecc.analysis.DepthFirstAdapter
          extended by org.sablecc.sablecc.InternalTransformationsToGrammar
All Implemented Interfaces:
Analysis, Switch

public class InternalTransformationsToGrammar
extends DepthFirstAdapter


Field Summary
private  ResolveAltIds altIds
           
private  AAlt aParsedAlt
           
(package private)  java.util.LinkedList checkCreationOfXElem
           
(package private)  int count
           
(package private)  boolean countElementNecessary
           
private  int currentAlt
           
private  java.lang.String currentAltName
           
private  java.lang.String currentNewAltName
           
private  java.lang.String currentProd
           
(package private)  int elem
           
private  ResolveIds ids
           
private  java.util.Map isElementIsAlist
           
private  java.util.LinkedList listElems
           
private  java.util.LinkedList listElemsAltTransform
           
(package private)  java.util.LinkedList listOfAlternativeElemsWHaveName
           
private  java.util.LinkedList listOfAlts
           
private  java.util.LinkedList listProd
           
private  java.util.LinkedList listSimpleTermTransform
           
(package private)  java.util.Map mapProductionTransformations
           
(package private) static int NONE
           
(package private) static int PLUS
           
private  boolean processingAst
           
private  boolean processingProdTransform
           
(package private) static int QMARK
           
(package private)  java.util.Map simpleTermOrsimpleListTermTypes
           
 java.util.Map simpleTermTransform
           
(package private) static int STAR
           
private  ResolveTransformIds transformIds
           
 
Constructor Summary
InternalTransformationsToGrammar(ResolveIds ids, ResolveAltIds altIds, ResolveTransformIds transformIds, java.util.LinkedList listSimpleTermTransform, java.util.Map simpleTermTransform, java.util.Map mapProductionTransformations, java.util.Map simpleTermOrsimpleListTermTypes)
           
 
Method Summary
 void caseAAlt(AAlt node)
           
 void caseAElem(AElem node)
           
 void caseAProd(AProd node)
           
private  java.util.List cloneList(java.util.List list)
           
 AProd createXelemProduction(java.lang.String name, java.lang.String elemTypeName, java.lang.String XproductionName, java.util.LinkedList nodeProdTransform)
           
 void inAAst(AAst node)
           
 void inAProductions(AProductions node)
           
 void outAAst(AAst node)
           
private  java.lang.String xproductionType(java.lang.String name)
           
 
Methods inherited from class org.sablecc.sablecc.analysis.DepthFirstAdapter
caseAAltTransform, caseAAst, caseAAstAlt, caseAAstProd, caseACharBasic, caseACharChar, caseAConcat, caseADecChar, caseAGrammar, caseAHelperDef, caseAHelpers, caseAHexChar, caseAIdBasic, caseAIgnTokens, caseAIntervalSet, caseAListTerm, caseAMinusBinOp, caseANewListTerm, caseANewTerm, caseANullTerm, caseAOperationSet, caseAPlusBinOp, caseAPlusUnOp, caseAProdName, caseAProductions, caseAProductionSpecifier, caseAQMarkUnOp, caseARegExp, caseARegExpBasic, caseASetBasic, caseASimpleListTerm, caseASimpleTerm, caseAStarUnOp, caseAStateList, caseAStateListTail, caseAStates, caseAStringBasic, caseATokenDef, caseATokens, caseATokenSpecifier, caseATransition, caseAUnExp, caseStart, defaultIn, defaultOut, inAAlt, inAAltTransform, inAAstAlt, inAAstProd, inACharBasic, inACharChar, inAConcat, inADecChar, inAElem, inAGrammar, inAHelperDef, inAHelpers, inAHexChar, inAIdBasic, inAIgnTokens, inAIntervalSet, inAListTerm, inAMinusBinOp, inANewListTerm, inANewTerm, inANullTerm, inAOperationSet, inAPlusBinOp, inAPlusUnOp, inAProd, inAProdName, inAProductionSpecifier, inAQMarkUnOp, inARegExp, inARegExpBasic, inASetBasic, inASimpleListTerm, inASimpleTerm, inAStarUnOp, inAStateList, inAStateListTail, inAStates, inAStringBasic, inATokenDef, inATokens, inATokenSpecifier, inATransition, inAUnExp, inStart, outAAlt, outAAltTransform, outAAstAlt, outAAstProd, outACharBasic, outACharChar, outAConcat, outADecChar, outAElem, outAGrammar, outAHelperDef, outAHelpers, outAHexChar, outAIdBasic, outAIgnTokens, outAIntervalSet, outAListTerm, outAMinusBinOp, outANewListTerm, outANewTerm, outANullTerm, outAOperationSet, outAPlusBinOp, outAPlusUnOp, outAProd, outAProdName, outAProductions, outAProductionSpecifier, outAQMarkUnOp, outARegExp, outARegExpBasic, outASetBasic, outASimpleListTerm, outASimpleTerm, outAStarUnOp, outAStateList, outAStateListTail, outAStates, outAStringBasic, outATokenDef, outATokens, outATokenSpecifier, outATransition, outAUnExp, outStart
 
Methods inherited from class org.sablecc.sablecc.analysis.AnalysisAdapter
caseEOF, caseTAbstract, caseTArrow, caseTBar, caseTBlank, caseTChar, caseTColon, caseTComma, caseTComment, caseTDDot, caseTDecChar, caseTDot, caseTEqual, caseTHelpers, caseTHexChar, caseTId, caseTIgnored, caseTLBkt, caseTLBrace, caseTLPar, caseTMinus, caseTNew, caseTNull, caseTPackage, caseTPkgId, caseTPlus, caseTProductions, caseTProductionSpecifier, caseTQMark, caseTRBkt, caseTRBrace, caseTRPar, caseTSemicolon, caseTSlash, caseTStar, caseTStates, caseTString, caseTSyntax, caseTTokens, caseTTokenSpecifier, caseTTree, defaultCase, getIn, getOut, setIn, setOut
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ids

private ResolveIds ids

altIds

private ResolveAltIds altIds

transformIds

private ResolveTransformIds transformIds

currentProd

private java.lang.String currentProd

currentAlt

private int currentAlt

currentAltName

private java.lang.String currentAltName

processingAst

private boolean processingAst

processingProdTransform

private boolean processingProdTransform

NONE

static final int NONE
See Also:
Constant Field Values

STAR

static final int STAR
See Also:
Constant Field Values

QMARK

static final int QMARK
See Also:
Constant Field Values

PLUS

static final int PLUS
See Also:
Constant Field Values

count

int count

elem

int elem

listSimpleTermTransform

private java.util.LinkedList listSimpleTermTransform

simpleTermTransform

public final java.util.Map simpleTermTransform

mapProductionTransformations

java.util.Map mapProductionTransformations

simpleTermOrsimpleListTermTypes

java.util.Map simpleTermOrsimpleListTermTypes

isElementIsAlist

private java.util.Map isElementIsAlist

listProd

private java.util.LinkedList listProd

listOfAlts

private java.util.LinkedList listOfAlts

listElems

private java.util.LinkedList listElems

aParsedAlt

private AAlt aParsedAlt

listElemsAltTransform

private java.util.LinkedList listElemsAltTransform

currentNewAltName

private java.lang.String currentNewAltName

countElementNecessary

boolean countElementNecessary

listOfAlternativeElemsWHaveName

java.util.LinkedList listOfAlternativeElemsWHaveName

checkCreationOfXElem

java.util.LinkedList checkCreationOfXElem
Constructor Detail

InternalTransformationsToGrammar

public InternalTransformationsToGrammar(ResolveIds ids,
                                        ResolveAltIds altIds,
                                        ResolveTransformIds transformIds,
                                        java.util.LinkedList listSimpleTermTransform,
                                        java.util.Map simpleTermTransform,
                                        java.util.Map mapProductionTransformations,
                                        java.util.Map simpleTermOrsimpleListTermTypes)
Method Detail

inAProductions

public void inAProductions(AProductions node)
Overrides:
inAProductions in class DepthFirstAdapter

inAAst

public void inAAst(AAst node)
Overrides:
inAAst in class DepthFirstAdapter

outAAst

public void outAAst(AAst node)
Overrides:
outAAst in class DepthFirstAdapter

caseAProd

public void caseAProd(AProd node)
Specified by:
caseAProd in interface Analysis
Overrides:
caseAProd in class DepthFirstAdapter

caseAAlt

public void caseAAlt(AAlt node)
Specified by:
caseAAlt in interface Analysis
Overrides:
caseAAlt in class DepthFirstAdapter

caseAElem

public void caseAElem(AElem node)
Specified by:
caseAElem in interface Analysis
Overrides:
caseAElem in class DepthFirstAdapter

createXelemProduction

public AProd createXelemProduction(java.lang.String name,
                                   java.lang.String elemTypeName,
                                   java.lang.String XproductionName,
                                   java.util.LinkedList nodeProdTransform)

cloneList

private java.util.List cloneList(java.util.List list)

xproductionType

private java.lang.String xproductionType(java.lang.String name)