Class QubecTalkEngineVisitor
- All Implemented Interfaces:
org.antlr.v4.runtime.tree.ParseTreeVisitor<Fragment>,org.kigalisim.lang.QubecTalkVisitor<Fragment>
Visitor which takes the parse tree of a QubecTalk program and converts it to a series of Fragments which are used to build up Commands which actually execute operations against a Kigali Sim Engine.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvisitAboutStanza(org.kigalisim.lang.QubecTalkParser.AboutStanzaContext ctx) visitAdditionExpression(org.kigalisim.lang.QubecTalkParser.AdditionExpressionContext ctx) visitApplicationDef(org.kigalisim.lang.QubecTalkParser.ApplicationDefContext ctx) visitApplicationMod(org.kigalisim.lang.QubecTalkParser.ApplicationModContext ctx) visitAssumeContinuedAllYears(org.kigalisim.lang.QubecTalkParser.AssumeContinuedAllYearsContext ctx) visitAssumeContinuedDuration(org.kigalisim.lang.QubecTalkParser.AssumeContinuedDurationContext ctx) visitAssumeNoAllYears(org.kigalisim.lang.QubecTalkParser.AssumeNoAllYearsContext ctx) visitAssumeNoDuration(org.kigalisim.lang.QubecTalkParser.AssumeNoDurationContext ctx) visitAssumeOnlyRechargeAllYears(org.kigalisim.lang.QubecTalkParser.AssumeOnlyRechargeAllYearsContext ctx) visitAssumeOnlyRechargeDuration(org.kigalisim.lang.QubecTalkParser.AssumeOnlyRechargeDurationContext ctx) visitBaseSimulation(org.kigalisim.lang.QubecTalkParser.BaseSimulationContext ctx) visitBaseSimulationTrials(org.kigalisim.lang.QubecTalkParser.BaseSimulationTrialsContext ctx) Processes a base simulation scenario with multiple trials but no policies.visitChangeAllYears(org.kigalisim.lang.QubecTalkParser.ChangeAllYearsContext ctx) visitChangeDuration(org.kigalisim.lang.QubecTalkParser.ChangeDurationContext ctx) visitConditionalExpression(org.kigalisim.lang.QubecTalkParser.ConditionalExpressionContext ctx) visitConditionExpression(org.kigalisim.lang.QubecTalkParser.ConditionExpressionContext ctx) visitDefaultStanza(org.kigalisim.lang.QubecTalkParser.DefaultStanzaContext ctx) visitDefineVarStatement(org.kigalisim.lang.QubecTalkParser.DefineVarStatementContext ctx) visitDrawNormalExpression(org.kigalisim.lang.QubecTalkParser.DrawNormalExpressionContext ctx) visitDrawUniformExpression(org.kigalisim.lang.QubecTalkParser.DrawUniformExpressionContext ctx) visitDuringAll(org.kigalisim.lang.QubecTalkParser.DuringAllContext ctx) visitDuringRange(org.kigalisim.lang.QubecTalkParser.DuringRangeContext ctx) visitDuringSingleYear(org.kigalisim.lang.QubecTalkParser.DuringSingleYearContext ctx) visitDuringStart(org.kigalisim.lang.QubecTalkParser.DuringStartContext ctx) visitDuringWithMax(org.kigalisim.lang.QubecTalkParser.DuringWithMaxContext ctx) visitDuringWithMin(org.kigalisim.lang.QubecTalkParser.DuringWithMinContext ctx) visitEnableAllYears(org.kigalisim.lang.QubecTalkParser.EnableAllYearsContext ctx) visitEnableDuration(org.kigalisim.lang.QubecTalkParser.EnableDurationContext ctx) visitEqualsAllYears(org.kigalisim.lang.QubecTalkParser.EqualsAllYearsContext ctx) visitEqualsDuration(org.kigalisim.lang.QubecTalkParser.EqualsDurationContext ctx) visitGetStream(org.kigalisim.lang.QubecTalkParser.GetStreamContext ctx) visitGetStreamConversion(org.kigalisim.lang.QubecTalkParser.GetStreamConversionContext ctx) visitGetStreamIndirect(org.kigalisim.lang.QubecTalkParser.GetStreamIndirectContext ctx) visitGetStreamIndirectConversion(org.kigalisim.lang.QubecTalkParser.GetStreamIndirectConversionContext ctx) visitGlobalStatement(org.kigalisim.lang.QubecTalkParser.GlobalStatementContext ctx) visitIdentifierAsVar(org.kigalisim.lang.QubecTalkParser.IdentifierAsVarContext ctx) visitInitialChargeAllYears(org.kigalisim.lang.QubecTalkParser.InitialChargeAllYearsContext ctx) visitInitialChargeDuration(org.kigalisim.lang.QubecTalkParser.InitialChargeDurationContext ctx) visitLimitBoundExpression(org.kigalisim.lang.QubecTalkParser.LimitBoundExpressionContext ctx) visitLimitCommandAllYears(org.kigalisim.lang.QubecTalkParser.LimitCommandAllYearsContext ctx) visitLimitCommandDisplacingAllYears(org.kigalisim.lang.QubecTalkParser.LimitCommandDisplacingAllYearsContext ctx) visitLimitCommandDisplacingByUnitsAllYears(org.kigalisim.lang.QubecTalkParser.LimitCommandDisplacingByUnitsAllYearsContext ctx) visitLimitCommandDisplacingByUnitsDuration(org.kigalisim.lang.QubecTalkParser.LimitCommandDisplacingByUnitsDurationContext ctx) visitLimitCommandDisplacingByVolumeAllYears(org.kigalisim.lang.QubecTalkParser.LimitCommandDisplacingByVolumeAllYearsContext ctx) visitLimitCommandDisplacingByVolumeDuration(org.kigalisim.lang.QubecTalkParser.LimitCommandDisplacingByVolumeDurationContext ctx) visitLimitCommandDisplacingDuration(org.kigalisim.lang.QubecTalkParser.LimitCommandDisplacingDurationContext ctx) visitLimitCommandDuration(org.kigalisim.lang.QubecTalkParser.LimitCommandDurationContext ctx) visitLimitMaxExpression(org.kigalisim.lang.QubecTalkParser.LimitMaxExpressionContext ctx) visitLimitMinExpression(org.kigalisim.lang.QubecTalkParser.LimitMinExpressionContext ctx) visitLogicalExpression(org.kigalisim.lang.QubecTalkParser.LogicalExpressionContext ctx) visitMultiplyExpression(org.kigalisim.lang.QubecTalkParser.MultiplyExpressionContext ctx) visitNumber(org.kigalisim.lang.QubecTalkParser.NumberContext ctx) visitParenExpression(org.kigalisim.lang.QubecTalkParser.ParenExpressionContext ctx) visitPolicySim(org.kigalisim.lang.QubecTalkParser.PolicySimContext ctx) Processes a simulation scenario with specified policies and time bounds.visitPolicySimTrials(org.kigalisim.lang.QubecTalkParser.PolicySimTrialsContext ctx) Processes a policy simulation scenario with multiple trials and specified policies.visitPolicyStanza(org.kigalisim.lang.QubecTalkParser.PolicyStanzaContext ctx) visitPowExpression(org.kigalisim.lang.QubecTalkParser.PowExpressionContext ctx) visitProgram(org.kigalisim.lang.QubecTalkParser.ProgramContext ctx) visitRechargeAllYears(org.kigalisim.lang.QubecTalkParser.RechargeAllYearsContext ctx) visitRechargeDuration(org.kigalisim.lang.QubecTalkParser.RechargeDurationContext ctx) visitRecoverAllYears(org.kigalisim.lang.QubecTalkParser.RecoverAllYearsContext ctx) visitRecoverDefaultInductionAllYears(org.kigalisim.lang.QubecTalkParser.RecoverDefaultInductionAllYearsContext ctx) visitRecoverDefaultInductionDuration(org.kigalisim.lang.QubecTalkParser.RecoverDefaultInductionDurationContext ctx) visitRecoverDefaultInductionStageAllYears(org.kigalisim.lang.QubecTalkParser.RecoverDefaultInductionStageAllYearsContext ctx) visitRecoverDefaultInductionStageDuration(org.kigalisim.lang.QubecTalkParser.RecoverDefaultInductionStageDurationContext ctx) visitRecoverDuration(org.kigalisim.lang.QubecTalkParser.RecoverDurationContext ctx) visitRecoverInductionAllYears(org.kigalisim.lang.QubecTalkParser.RecoverInductionAllYearsContext ctx) visitRecoverInductionDuration(org.kigalisim.lang.QubecTalkParser.RecoverInductionDurationContext ctx) visitRecoverInductionStageAllYears(org.kigalisim.lang.QubecTalkParser.RecoverInductionStageAllYearsContext ctx) visitRecoverInductionStageDuration(org.kigalisim.lang.QubecTalkParser.RecoverInductionStageDurationContext ctx) visitRecoverStageAllYears(org.kigalisim.lang.QubecTalkParser.RecoverStageAllYearsContext ctx) visitRecoverStageDuration(org.kigalisim.lang.QubecTalkParser.RecoverStageDurationContext ctx) visitReplaceAllYears(org.kigalisim.lang.QubecTalkParser.ReplaceAllYearsContext ctx) visitReplaceDuration(org.kigalisim.lang.QubecTalkParser.ReplaceDurationContext ctx) visitRetireAllYears(org.kigalisim.lang.QubecTalkParser.RetireAllYearsContext ctx) Processes retire operation applied to all years, with or without replacement.visitRetireDuration(org.kigalisim.lang.QubecTalkParser.RetireDurationContext ctx) Processes retire operation for a specified duration, with or without replacement.visitSetAllYears(org.kigalisim.lang.QubecTalkParser.SetAllYearsContext ctx) visitSetDuration(org.kigalisim.lang.QubecTalkParser.SetDurationContext ctx) visitSimpleIdentifier(org.kigalisim.lang.QubecTalkParser.SimpleIdentifierContext ctx) visitSimulationsStanza(org.kigalisim.lang.QubecTalkParser.SimulationsStanzaContext ctx) visitStream(org.kigalisim.lang.QubecTalkParser.StreamContext ctx) visitString(org.kigalisim.lang.QubecTalkParser.StringContext ctx) visitSubstanceDef(org.kigalisim.lang.QubecTalkParser.SubstanceDefContext ctx) Processes a substance definition by extracting its name and operations.visitSubstanceMod(org.kigalisim.lang.QubecTalkParser.SubstanceModContext ctx) Processes a substance modification by extracting its name and operations.visitSubstanceStatement(org.kigalisim.lang.QubecTalkParser.SubstanceStatementContext ctx) visitUnitOrRatio(org.kigalisim.lang.QubecTalkParser.UnitOrRatioContext ctx) visitUnitValue(org.kigalisim.lang.QubecTalkParser.UnitValueContext ctx) Methods inherited from class org.kigalisim.lang.QubecTalkBaseVisitor
visitRelativeUnit, visitSimpleExpression, visitTemporalUnit, visitUnit, visitVolumeUnitMethods inherited from class org.antlr.v4.runtime.tree.AbstractParseTreeVisitor
aggregateResult, defaultResult, shouldVisitNextChild, visit, visitChildren, visitErrorNode, visitTerminalMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.antlr.v4.runtime.tree.ParseTreeVisitor
visit, visitChildren, visitErrorNode, visitTerminal
-
Constructor Details
-
QubecTalkEngineVisitor
public QubecTalkEngineVisitor()Constructs a new QubecTalkEngineVisitor.
-
-
Method Details
-
visitNumber
-
visitString
-
visitUnitValue
-
visitUnitOrRatio
-
visitConditionExpression
public Fragment visitConditionExpression(org.kigalisim.lang.QubecTalkParser.ConditionExpressionContext ctx) -
visitAdditionExpression
public Fragment visitAdditionExpression(org.kigalisim.lang.QubecTalkParser.AdditionExpressionContext ctx) -
visitPowExpression
-
visitConditionalExpression
public Fragment visitConditionalExpression(org.kigalisim.lang.QubecTalkParser.ConditionalExpressionContext ctx) -
visitGetStreamConversion
public Fragment visitGetStreamConversion(org.kigalisim.lang.QubecTalkParser.GetStreamConversionContext ctx) -
visitLimitMinExpression
public Fragment visitLimitMinExpression(org.kigalisim.lang.QubecTalkParser.LimitMinExpressionContext ctx) -
visitGetStreamIndirectConversion
public Fragment visitGetStreamIndirectConversion(org.kigalisim.lang.QubecTalkParser.GetStreamIndirectConversionContext ctx) -
visitLimitMaxExpression
public Fragment visitLimitMaxExpression(org.kigalisim.lang.QubecTalkParser.LimitMaxExpressionContext ctx) -
visitMultiplyExpression
public Fragment visitMultiplyExpression(org.kigalisim.lang.QubecTalkParser.MultiplyExpressionContext ctx) -
visitDrawNormalExpression
public Fragment visitDrawNormalExpression(org.kigalisim.lang.QubecTalkParser.DrawNormalExpressionContext ctx) -
visitLogicalExpression
public Fragment visitLogicalExpression(org.kigalisim.lang.QubecTalkParser.LogicalExpressionContext ctx) -
visitGetStreamIndirect
public Fragment visitGetStreamIndirect(org.kigalisim.lang.QubecTalkParser.GetStreamIndirectContext ctx) -
visitDrawUniformExpression
public Fragment visitDrawUniformExpression(org.kigalisim.lang.QubecTalkParser.DrawUniformExpressionContext ctx) -
visitSimpleIdentifier
public Fragment visitSimpleIdentifier(org.kigalisim.lang.QubecTalkParser.SimpleIdentifierContext ctx) -
visitGetStream
-
visitLimitBoundExpression
public Fragment visitLimitBoundExpression(org.kigalisim.lang.QubecTalkParser.LimitBoundExpressionContext ctx) -
visitStream
-
visitIdentifierAsVar
-
visitDuringRange
-
visitDuringStart
-
visitDuringSingleYear
public Fragment visitDuringSingleYear(org.kigalisim.lang.QubecTalkParser.DuringSingleYearContext ctx) -
visitDuringAll
-
visitDuringWithMax
-
visitDuringWithMin
-
visitDefaultStanza
-
visitAboutStanza
-
visitSimulationsStanza
public Fragment visitSimulationsStanza(org.kigalisim.lang.QubecTalkParser.SimulationsStanzaContext ctx) -
visitPolicyStanza
-
visitApplicationDef
-
visitSubstanceDef
Processes a substance definition by extracting its name and operations.Iterates through all children in order, processing both substanceStatement and globalStatement types in the correct sequence. Uses getChild since multiple statement types are present in a single substance definition.
-
visitApplicationMod
-
visitSubstanceMod
Processes a substance modification by extracting its name and operations.Iterates through all children in order, processing both substanceStatement and globalStatement types in the correct sequence. Uses getChild since multiple statement types are present in a single substance modification.
-
visitLimitCommandAllYears
public Fragment visitLimitCommandAllYears(org.kigalisim.lang.QubecTalkParser.LimitCommandAllYearsContext ctx) -
visitLimitCommandDisplacingAllYears
public Fragment visitLimitCommandDisplacingAllYears(org.kigalisim.lang.QubecTalkParser.LimitCommandDisplacingAllYearsContext ctx) -
visitLimitCommandDuration
public Fragment visitLimitCommandDuration(org.kigalisim.lang.QubecTalkParser.LimitCommandDurationContext ctx) -
visitLimitCommandDisplacingDuration
public Fragment visitLimitCommandDisplacingDuration(org.kigalisim.lang.QubecTalkParser.LimitCommandDisplacingDurationContext ctx) -
visitLimitCommandDisplacingByVolumeAllYears
public Fragment visitLimitCommandDisplacingByVolumeAllYears(org.kigalisim.lang.QubecTalkParser.LimitCommandDisplacingByVolumeAllYearsContext ctx) -
visitLimitCommandDisplacingByUnitsAllYears
public Fragment visitLimitCommandDisplacingByUnitsAllYears(org.kigalisim.lang.QubecTalkParser.LimitCommandDisplacingByUnitsAllYearsContext ctx) -
visitLimitCommandDisplacingByVolumeDuration
public Fragment visitLimitCommandDisplacingByVolumeDuration(org.kigalisim.lang.QubecTalkParser.LimitCommandDisplacingByVolumeDurationContext ctx) -
visitLimitCommandDisplacingByUnitsDuration
public Fragment visitLimitCommandDisplacingByUnitsDuration(org.kigalisim.lang.QubecTalkParser.LimitCommandDisplacingByUnitsDurationContext ctx) -
visitChangeAllYears
-
visitChangeDuration
-
visitDefineVarStatement
public Fragment visitDefineVarStatement(org.kigalisim.lang.QubecTalkParser.DefineVarStatementContext ctx) -
visitEqualsAllYears
-
visitEqualsDuration
-
visitInitialChargeAllYears
public Fragment visitInitialChargeAllYears(org.kigalisim.lang.QubecTalkParser.InitialChargeAllYearsContext ctx) -
visitInitialChargeDuration
public Fragment visitInitialChargeDuration(org.kigalisim.lang.QubecTalkParser.InitialChargeDurationContext ctx) -
visitRechargeAllYears
public Fragment visitRechargeAllYears(org.kigalisim.lang.QubecTalkParser.RechargeAllYearsContext ctx) -
visitRechargeDuration
public Fragment visitRechargeDuration(org.kigalisim.lang.QubecTalkParser.RechargeDurationContext ctx) -
visitRecoverAllYears
-
visitRecoverDuration
-
visitRecoverStageAllYears
public Fragment visitRecoverStageAllYears(org.kigalisim.lang.QubecTalkParser.RecoverStageAllYearsContext ctx) -
visitRecoverStageDuration
public Fragment visitRecoverStageDuration(org.kigalisim.lang.QubecTalkParser.RecoverStageDurationContext ctx) -
visitRecoverInductionAllYears
public Fragment visitRecoverInductionAllYears(org.kigalisim.lang.QubecTalkParser.RecoverInductionAllYearsContext ctx) -
visitRecoverInductionDuration
public Fragment visitRecoverInductionDuration(org.kigalisim.lang.QubecTalkParser.RecoverInductionDurationContext ctx) -
visitRecoverInductionStageAllYears
public Fragment visitRecoverInductionStageAllYears(org.kigalisim.lang.QubecTalkParser.RecoverInductionStageAllYearsContext ctx) -
visitRecoverInductionStageDuration
public Fragment visitRecoverInductionStageDuration(org.kigalisim.lang.QubecTalkParser.RecoverInductionStageDurationContext ctx) -
visitRecoverDefaultInductionAllYears
public Fragment visitRecoverDefaultInductionAllYears(org.kigalisim.lang.QubecTalkParser.RecoverDefaultInductionAllYearsContext ctx) -
visitRecoverDefaultInductionDuration
public Fragment visitRecoverDefaultInductionDuration(org.kigalisim.lang.QubecTalkParser.RecoverDefaultInductionDurationContext ctx) -
visitRecoverDefaultInductionStageAllYears
public Fragment visitRecoverDefaultInductionStageAllYears(org.kigalisim.lang.QubecTalkParser.RecoverDefaultInductionStageAllYearsContext ctx) -
visitRecoverDefaultInductionStageDuration
public Fragment visitRecoverDefaultInductionStageDuration(org.kigalisim.lang.QubecTalkParser.RecoverDefaultInductionStageDurationContext ctx) -
visitReplaceAllYears
-
visitReplaceDuration
-
visitRetireAllYears
Processes retire operation applied to all years, with or without replacement.Checks for the presence of "with replacement" clause and creates the appropriate operation type.
-
visitRetireDuration
Processes retire operation for a specified duration, with or without replacement.Checks for the presence of "with replacement" clause and creates the appropriate operation type with timing information.
-
visitSetAllYears
-
visitSetDuration
-
visitEnableAllYears
-
visitEnableDuration
-
visitAssumeNoAllYears
public Fragment visitAssumeNoAllYears(org.kigalisim.lang.QubecTalkParser.AssumeNoAllYearsContext ctx) -
visitAssumeNoDuration
public Fragment visitAssumeNoDuration(org.kigalisim.lang.QubecTalkParser.AssumeNoDurationContext ctx) -
visitAssumeOnlyRechargeAllYears
public Fragment visitAssumeOnlyRechargeAllYears(org.kigalisim.lang.QubecTalkParser.AssumeOnlyRechargeAllYearsContext ctx) -
visitAssumeOnlyRechargeDuration
public Fragment visitAssumeOnlyRechargeDuration(org.kigalisim.lang.QubecTalkParser.AssumeOnlyRechargeDurationContext ctx) -
visitAssumeContinuedAllYears
public Fragment visitAssumeContinuedAllYears(org.kigalisim.lang.QubecTalkParser.AssumeContinuedAllYearsContext ctx) -
visitAssumeContinuedDuration
public Fragment visitAssumeContinuedDuration(org.kigalisim.lang.QubecTalkParser.AssumeContinuedDurationContext ctx) -
visitBaseSimulation
-
visitPolicySim
Processes a simulation scenario with specified policies and time bounds.Extracts the scenario name, start/end years, and the list of policies to apply.
-
visitBaseSimulationTrials
public Fragment visitBaseSimulationTrials(org.kigalisim.lang.QubecTalkParser.BaseSimulationTrialsContext ctx) Processes a base simulation scenario with multiple trials but no policies.Extracts the scenario name, start/end years, and trial count for stochastic runs.
-
visitPolicySimTrials
Processes a policy simulation scenario with multiple trials and specified policies.Extracts the scenario name, start/end years, trial count, and the list of policies.
-
visitGlobalStatement
-
visitSubstanceStatement
public Fragment visitSubstanceStatement(org.kigalisim.lang.QubecTalkParser.SubstanceStatementContext ctx) -
visitParenExpression
-
visitProgram
-