Package eu.europa.ted.efx.sdk1
Class EfxTemplateTranslatorV1
- java.lang.Object
-
- eu.europa.ted.efx.sdk1.EfxBaseListener
-
- eu.europa.ted.efx.sdk1.EfxExpressionTranslatorV1
-
- eu.europa.ted.efx.sdk1.EfxTemplateTranslatorV1
-
- All Implemented Interfaces:
EfxExpressionTranslator,EfxTemplateTranslator,EfxListener,org.antlr.v4.runtime.tree.ParseTreeListener
public class EfxTemplateTranslatorV1 extends EfxExpressionTranslatorV1 implements EfxTemplateTranslator
The EfxTemplateTranslator extends theEfxExpressionTranslatorV1to provide additional translation capabilities for EFX templates. If has been implemented as an extension to the EfxExpressionTranslator in order to keep things simpler when one only needs to translate EFX expressions (like the condition associated with a business rule).
-
-
Field Summary
-
Fields inherited from class eu.europa.ted.efx.sdk1.EfxExpressionTranslatorV1
efxContext, errorListener, script, stack, symbols
-
-
Constructor Summary
Constructors Constructor Description EfxTemplateTranslatorV1(MarkupGenerator markupGenerator, SymbolResolver symbolResolver, ScriptGenerator scriptGenerator, org.antlr.v4.runtime.BaseErrorListener errorListener)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidenterTemplateFile(EfxParser.TemplateFileContext ctx)Template FilevoidexitAssetId(EfxParser.AssetIdContext ctx)Exit a parse tree produced byEfxParser.assetId().voidexitAssetType(EfxParser.AssetTypeContext ctx)Exit a parse tree produced byEfxParser.assetType().voidexitContextDeclarationBlock(EfxParser.ContextDeclarationBlockContext ctx)This method changes the current EFX context.voidexitExpressionTemplate(EfxParser.ExpressionTemplateContext ctx)Exit a parse tree produced by theexpressionTemplatelabeled alternative inEfxParser.templateFragment().voidexitLabelTemplate(EfxParser.LabelTemplateContext ctx)Exit a parse tree produced by thelabelTemplatelabeled alternative inEfxParser.templateFragment().voidexitLabelType(EfxParser.LabelTypeContext ctx)Exit a parse tree produced byEfxParser.labelType().voidexitShorthandBtLabelReference(EfxParser.ShorthandBtLabelReferenceContext ctx)Exit a parse tree produced by theshorthandBtLabelReferencelabeled alternative inEfxParser.labelBlock().voidexitShorthandFieldLabelReference(EfxParser.ShorthandFieldLabelReferenceContext ctx)Exit a parse tree produced by theshorthandFieldLabelReferencelabeled alternative inEfxParser.labelBlock().voidexitShorthandFieldValueReferenceFromContextField(EfxParser.ShorthandFieldValueReferenceFromContextFieldContext ctx)Handles the $value shorthand syntax which renders the value of the field declared as context in the current line of the template.voidexitShorthandIndirectLabelReference(EfxParser.ShorthandIndirectLabelReferenceContext ctx)Exit a parse tree produced by theshorthandIndirectLabelReferencelabeled alternative inEfxParser.labelBlock().voidexitShorthandIndirectLabelReferenceFromContextField(EfxParser.ShorthandIndirectLabelReferenceFromContextFieldContext ctx)Handles the #value shorthand syntax which renders the label corresponding to the value of the the field declared as the context of the current line of the template.voidexitShorthandLabelReferenceFromContext(EfxParser.ShorthandLabelReferenceFromContextContext ctx)Handles the #{labelType} shorthand syntax which renders the label of the Field or Node declared as the context.voidexitStandardExpressionBlock(EfxParser.StandardExpressionBlockContext ctx)Handles a standard expression block in a template line.voidexitStandardLabelReference(EfxParser.StandardLabelReferenceContext ctx)Label Blocks #{...}voidexitTemplateFile(EfxParser.TemplateFileContext ctx)Exit a parse tree produced byEfxParser.templateFile().voidexitTemplateLine(EfxParser.TemplateLineContext ctx)Template linesvoidexitTextTemplate(EfxParser.TextTemplateContext ctx)Source template blocksStringrenderTemplate(InputStream stream)StringrenderTemplate(String template)Translates the template contained in the string passed as a parameter.StringrenderTemplate(Path pathname)Opens the indicated EFX file and translates the EFX template it contains.-
Methods inherited from class eu.europa.ted.efx.sdk1.EfxExpressionTranslatorV1
enterAbsoluteFieldReference, enterAbsoluteNodeReference, enterFieldReferenceInOtherNotice, enterPredicate, enterSingleExpression, exitAbsoluteFieldReference, exitAbsoluteNodeReference, exitAdditionExpression, exitBooleanComparison, exitBooleanInListCondition, exitBooleanIteratorExpression, exitBooleanList, exitBooleanParameterDeclaration, exitBooleanSequenceFromIteration, exitBooleanVariableDeclaration, exitCodeList, exitCodelistReference, exitConcatFunction, exitConditionalBooleanExpression, exitConditionalDateExpression, exitConditionalDurationExpression, exitConditionalNumericExpression, exitConditionalStringExpression, exitConditionalTimeExpression, exitContainsFunction, exitContextFieldSpecifier, exitContextIteratorExpression, exitContextNodeSpecifier, exitContextVariableDeclaration, exitContextVariableSpecifier, exitCountFunction, exitDateComparison, exitDateFromStringFunction, exitDateInListCondition, exitDateIteratorExpression, exitDateList, exitDateLiteral, exitDateMinusMeasureFunction, exitDateParameterDeclaration, exitDatePlusMeasureFunction, exitDateSequenceFromIteration, exitDateSubtractionExpression, exitDateVariableDeclaration, exitDayTimeDurationFromStringFunction, exitDistinctValuesFunction, exitDurationAdditionExpression, exitDurationComparison, exitDurationInListCondition, exitDurationIteratorExpression, exitDurationLeftMultiplicationExpression, exitDurationList, exitDurationLiteral, exitDurationParameterDeclaration, exitDurationRightMultiplicationExpression, exitDurationSequenceFromIteration, exitDurationSubtractionExpression, exitDurationVariableDeclaration, exitEmptinessCondition, exitEndsWithFunction, exitExceptFunction, exitFalseBooleanLiteral, exitFieldReferenceInOtherNotice, exitFieldReferenceWithAxis, exitFieldReferenceWithFieldContextOverride, exitFieldReferenceWithNodeContextOverride, exitFieldReferenceWithPredicate, exitFieldReferenceWithVariableContextOverride, exitFieldValueComparison, exitFormatNumberFunction, exitIntersectFunction, exitIterationExpression, exitIteratorExpression, exitIteratorList, exitLikePatternCondition, exitLogicalAndCondition, exitLogicalOrCondition, exitMultiplicationExpression, exitNodeReferenceWithPredicate, exitNotFunction, exitNoticeReference, exitNumberFunction, exitNumberInListCondition, exitNumericComparison, exitNumericIteratorExpression, exitNumericList, exitNumericLiteral, exitNumericParameterDeclaration, exitNumericSequenceFromIteration, exitNumericVariableDeclaration, exitParenthesizedBooleanExpression, exitParenthesizedBooleansFromIteration, exitParenthesizedDatesFromIteration, exitParenthesizedDurationsFromITeration, exitParenthesizedNumbersFromIteration, exitParenthesizedNumericExpression, exitParenthesizedStringsFromIteration, exitParenthesizedTimesFromIteration, exitPredicate, exitPresenceCondition, exitQuantifiedExpression, exitScalarFromAttributeReference, exitScalarFromFieldReference, exitSequenceEqualFunction, exitSequenceFromFieldReference, exitSimpleFieldReference, exitSimpleNodeReference, exitSingleExpression, exitStartsWithFunction, exitStringComparison, exitStringInListCondition, exitStringIteratorExpression, exitStringLengthFunction, exitStringList, exitStringLiteral, exitStringParameterDeclaration, exitStringSequenceFromIteration, exitStringVariableDeclaration, exitSubstringFunction, exitSumFunction, exitTimeComparison, exitTimeFromStringFunction, exitTimeInListCondition, exitTimeIteratorExpression, exitTimeList, exitTimeLiteral, exitTimeParameterDeclaration, exitTimeSequenceFromIteration, exitTimeVariableDeclaration, exitToStringFunction, exitTrueBooleanLiteral, exitUnionFunction, exitUniqueValueCondition, exitUntypedConditionalExpression, exitVariableReference, exitYearMonthDurationFromStringFunction, getFieldIdFromChildSimpleFieldReferenceContext, getNodeIdFromChildSimpleNodeReferenceContext, translateExpression
-
Methods inherited from class eu.europa.ted.efx.sdk1.EfxBaseListener
enterAdditionExpression, enterAssetId, enterAssetType, enterAttributeReference, enterAxis, enterBooleanCastExpression, enterBooleanComparison, enterBooleanFunctionExpression, enterBooleanInListCondition, enterBooleanIteratorExpression, enterBooleanList, enterBooleanLiteral, enterBooleanLiteralExpression, enterBooleanParameterDeclaration, enterBooleanSequenceFromIteration, enterBooleansFromIteration, enterBooleanTypeCastFieldReference, enterBooleanVariableDeclaration, enterCodeList, enterCodelistId, enterCodelistReference, enterConcatFunction, enterConditionalBooleanExpression, enterConditionalDateExpression, enterConditionalDurationExpression, enterConditionalNumericExpression, enterConditionalStringExpression, enterConditionalTimeExpression, enterContainsFunction, enterContextDeclarationBlock, enterContextFieldSpecifier, enterContextIteratorExpression, enterContextNodeSpecifier, enterContextVariableDeclaration, enterContextVariableSpecifier, enterCountFunction, enterDateCastExpression, enterDateComparison, enterDateFromStringFunction, enterDateFunctionExpression, enterDateInListCondition, enterDateIteratorExpression, enterDateList, enterDateLiteral, enterDateLiteralExpression, enterDateMinusMeasureFunction, enterDateParameterDeclaration, enterDatePlusMeasureFunction, enterDateSequenceFromIteration, enterDatesFromIteration, enterDateSubtractionExpression, enterDateTypeCastFieldReference, enterDateVariableDeclaration, enterDayTimeDurationFromStringFunction, enterDistinctValuesFunction, enterDurationAdditionExpression, enterDurationCastExpression, enterDurationComparison, enterDurationFunctionExpression, enterDurationInListCondition, enterDurationIteratorExpression, enterDurationLeftMultiplicationExpression, enterDurationList, enterDurationLiteral, enterDurationLiteralExpression, enterDurationParameterDeclaration, enterDurationRightMultiplicationExpression, enterDurationSequenceFromIteration, enterDurationsFromIteration, enterDurationSubtractionExpression, enterDurationTypeCastFieldReference, enterDurationVariableDeclaration, enterEmptinessCondition, enterEndsWithFunction, enterEveryRule, enterExceptFunction, enterExpression, enterExpressionTemplate, enterFalseBooleanLiteral, enterFieldContext, enterFieldReference, enterFieldReferenceWithAxis, enterFieldReferenceWithFieldContextOverride, enterFieldReferenceWithNodeContextOverride, enterFieldReferenceWithPredicate, enterFieldReferenceWithVariableContextOverride, enterFieldValueComparison, enterFormatNumberFunction, enterIntersectFunction, enterIteratorExpression, enterIteratorList, enterLabelTemplate, enterLabelType, enterLikePatternCondition, enterLogicalAndCondition, enterLogicalOrCondition, enterMultiplicationExpression, enterNodeContext, enterNodeReference, enterNodeReferenceInOtherNotice, enterNodeReferenceWithPredicate, enterNotFunction, enterNoticeReference, enterNumberFunction, enterNumberInListCondition, enterNumbersFromIteration, enterNumericCastExpression, enterNumericComparison, enterNumericFunctionExpression, enterNumericIteratorExpression, enterNumericList, enterNumericLiteral, enterNumericLiteralExpression, enterNumericParameterDeclaration, enterNumericSequenceFromIteration, enterNumericTypeCastFieldReference, enterNumericVariableDeclaration, enterOtherAssetId, enterParameterList, enterParameterValue, enterParenthesizedBooleanExpression, enterParenthesizedBooleansFromIteration, enterParenthesizedDatesFromIteration, enterParenthesizedDurationExpression, enterParenthesizedDurationsFromITeration, enterParenthesizedNumbersFromIteration, enterParenthesizedNumericExpression, enterParenthesizedStringsFromIteration, enterParenthesizedTimesFromIteration, enterPathFromReference, enterPresenceCondition, enterQuantifiedExpression, enterScalarFromAttributeReference, enterScalarFromFieldReference, enterSequenceEqualFunction, enterSequenceExpression, enterSequenceFromAttributeReference, enterSequenceFromFieldReference, enterShorthandBtLabelReference, enterShorthandFieldLabelReference, enterShorthandFieldValueReferenceFromContextField, enterShorthandIndirectLabelReference, enterShorthandIndirectLabelReferenceFromContextField, enterShorthandLabelReferenceFromContext, enterSimpleFieldReference, enterSimpleNodeReference, enterStandardExpressionBlock, enterStandardLabelReference, enterStartsWithFunction, enterStringCastExpression, enterStringComparison, enterStringFunctionExpression, enterStringInListCondition, enterStringIteratorExpression, enterStringLengthFunction, enterStringList, enterStringLiteral, enterStringLiteralExpression, enterStringParameterDeclaration, enterStringSequenceFromIteration, enterStringsFromIteration, enterStringTypeCastFieldReference, enterStringVariableDeclaration, enterSubstringFunction, enterSumFunction, enterTemplate, enterTemplateLine, enterTextBlock, enterTextTemplate, enterTimeCastExpression, enterTimeComparison, enterTimeFromStringFunction, enterTimeFunctionExpression, enterTimeInListCondition, enterTimeIteratorExpression, enterTimeList, enterTimeLiteral, enterTimeLiteralExpression, enterTimeParameterDeclaration, enterTimeSequenceFromIteration, enterTimesFromIteration, enterTimeTypeCastFieldReference, enterTimeVariableDeclaration, enterToStringFunction, enterTrueBooleanLiteral, enterUnionFunction, enterUniqueValueCondition, enterUntypedBooleanExpression, enterUntypedConditionalExpression, enterUntypedDateExpression, enterUntypedDurationExpression, enterUntypedFieldReferenceExpression, enterUntypedNumericExpression, enterUntypedSequenceExpression, enterUntypedStringExpression, enterUntypedTimeExpression, enterUntypedVariableExpression, enterVariableReference, enterWhitespace, enterYearMonthDurationFromStringFunction, exitAttributeReference, exitAxis, exitBooleanCastExpression, exitBooleanFunctionExpression, exitBooleanLiteral, exitBooleanLiteralExpression, exitBooleansFromIteration, exitBooleanTypeCastFieldReference, exitCodelistId, exitDateCastExpression, exitDateFunctionExpression, exitDateLiteralExpression, exitDatesFromIteration, exitDateTypeCastFieldReference, exitDurationCastExpression, exitDurationFunctionExpression, exitDurationLiteralExpression, exitDurationsFromIteration, exitDurationTypeCastFieldReference, exitEveryRule, exitExpression, exitFieldContext, exitFieldReference, exitIteratorExpression, exitNodeContext, exitNodeReference, exitNodeReferenceInOtherNotice, exitNumbersFromIteration, exitNumericCastExpression, exitNumericFunctionExpression, exitNumericLiteralExpression, exitNumericTypeCastFieldReference, exitOtherAssetId, exitParameterList, exitParameterValue, exitParenthesizedDurationExpression, exitPathFromReference, exitSequenceExpression, exitSequenceFromAttributeReference, exitStringCastExpression, exitStringFunctionExpression, exitStringLiteralExpression, exitStringsFromIteration, exitStringTypeCastFieldReference, exitTemplate, exitTextBlock, exitTimeCastExpression, exitTimeFunctionExpression, exitTimeLiteralExpression, exitTimesFromIteration, exitTimeTypeCastFieldReference, exitUntypedBooleanExpression, exitUntypedDateExpression, exitUntypedDurationExpression, exitUntypedFieldReferenceExpression, exitUntypedNumericExpression, exitUntypedSequenceExpression, exitUntypedStringExpression, exitUntypedTimeExpression, exitUntypedVariableExpression, exitWhitespace, visitErrorNode, visitTerminal
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface eu.europa.ted.efx.interfaces.EfxExpressionTranslator
translateExpression
-
-
-
-
Constructor Detail
-
EfxTemplateTranslatorV1
public EfxTemplateTranslatorV1(MarkupGenerator markupGenerator, SymbolResolver symbolResolver, ScriptGenerator scriptGenerator, org.antlr.v4.runtime.BaseErrorListener errorListener)
-
-
Method Detail
-
renderTemplate
public String renderTemplate(Path pathname) throws IOException
Opens the indicated EFX file and translates the EFX template it contains.- Specified by:
renderTemplatein interfaceEfxTemplateTranslator- Throws:
IOException
-
renderTemplate
public String renderTemplate(String template)
Translates the template contained in the string passed as a parameter.- Specified by:
renderTemplatein interfaceEfxTemplateTranslator
-
renderTemplate
public String renderTemplate(InputStream stream) throws IOException
- Specified by:
renderTemplatein interfaceEfxTemplateTranslator- Throws:
IOException
-
enterTemplateFile
public void enterTemplateFile(EfxParser.TemplateFileContext ctx)
Template File- Specified by:
enterTemplateFilein interfaceEfxListener- Overrides:
enterTemplateFilein classEfxBaseListener- Parameters:
ctx- the parse tree
-
exitTemplateFile
public void exitTemplateFile(EfxParser.TemplateFileContext ctx)
Description copied from class:EfxBaseListenerExit a parse tree produced byEfxParser.templateFile().The default implementation does nothing.
- Specified by:
exitTemplateFilein interfaceEfxListener- Overrides:
exitTemplateFilein classEfxBaseListener- Parameters:
ctx- the parse tree
-
exitTextTemplate
public void exitTextTemplate(EfxParser.TextTemplateContext ctx)
Source template blocks- Specified by:
exitTextTemplatein interfaceEfxListener- Overrides:
exitTextTemplatein classEfxBaseListener- Parameters:
ctx- the parse tree
-
exitLabelTemplate
public void exitLabelTemplate(EfxParser.LabelTemplateContext ctx)
Description copied from class:EfxBaseListenerExit a parse tree produced by thelabelTemplatelabeled alternative inEfxParser.templateFragment().The default implementation does nothing.
- Specified by:
exitLabelTemplatein interfaceEfxListener- Overrides:
exitLabelTemplatein classEfxBaseListener- Parameters:
ctx- the parse tree
-
exitExpressionTemplate
public void exitExpressionTemplate(EfxParser.ExpressionTemplateContext ctx)
Description copied from class:EfxBaseListenerExit a parse tree produced by theexpressionTemplatelabeled alternative inEfxParser.templateFragment().The default implementation does nothing.
- Specified by:
exitExpressionTemplatein interfaceEfxListener- Overrides:
exitExpressionTemplatein classEfxBaseListener- Parameters:
ctx- the parse tree
-
exitStandardLabelReference
public void exitStandardLabelReference(EfxParser.StandardLabelReferenceContext ctx)
Label Blocks #{...}- Specified by:
exitStandardLabelReferencein interfaceEfxListener- Overrides:
exitStandardLabelReferencein classEfxBaseListener- Parameters:
ctx- the parse tree
-
exitShorthandBtLabelReference
public void exitShorthandBtLabelReference(EfxParser.ShorthandBtLabelReferenceContext ctx)
Description copied from class:EfxBaseListenerExit a parse tree produced by theshorthandBtLabelReferencelabeled alternative inEfxParser.labelBlock().The default implementation does nothing.
- Specified by:
exitShorthandBtLabelReferencein interfaceEfxListener- Overrides:
exitShorthandBtLabelReferencein classEfxBaseListener- Parameters:
ctx- the parse tree
-
exitShorthandFieldLabelReference
public void exitShorthandFieldLabelReference(EfxParser.ShorthandFieldLabelReferenceContext ctx)
Description copied from class:EfxBaseListenerExit a parse tree produced by theshorthandFieldLabelReferencelabeled alternative inEfxParser.labelBlock().The default implementation does nothing.
- Specified by:
exitShorthandFieldLabelReferencein interfaceEfxListener- Overrides:
exitShorthandFieldLabelReferencein classEfxBaseListener- Parameters:
ctx- the parse tree
-
exitShorthandIndirectLabelReference
public void exitShorthandIndirectLabelReference(EfxParser.ShorthandIndirectLabelReferenceContext ctx)
Description copied from class:EfxBaseListenerExit a parse tree produced by theshorthandIndirectLabelReferencelabeled alternative inEfxParser.labelBlock().The default implementation does nothing.
- Specified by:
exitShorthandIndirectLabelReferencein interfaceEfxListener- Overrides:
exitShorthandIndirectLabelReferencein classEfxBaseListener- Parameters:
ctx- the parse tree
-
exitShorthandLabelReferenceFromContext
public void exitShorthandLabelReferenceFromContext(EfxParser.ShorthandLabelReferenceFromContextContext ctx)
Handles the #{labelType} shorthand syntax which renders the label of the Field or Node declared as the context. If the labelType is 'value', then the label depends on the field's value and is rendered according to the field's type. The assetType is inferred from the Field or Node declared as context.- Specified by:
exitShorthandLabelReferenceFromContextin interfaceEfxListener- Overrides:
exitShorthandLabelReferenceFromContextin classEfxBaseListener- Parameters:
ctx- the parse tree
-
exitShorthandIndirectLabelReferenceFromContextField
public void exitShorthandIndirectLabelReferenceFromContextField(EfxParser.ShorthandIndirectLabelReferenceFromContextFieldContext ctx)
Handles the #value shorthand syntax which renders the label corresponding to the value of the the field declared as the context of the current line of the template. This shorthand syntax is only supported for fields of type 'code' or 'indicator'.- Specified by:
exitShorthandIndirectLabelReferenceFromContextFieldin interfaceEfxListener- Overrides:
exitShorthandIndirectLabelReferenceFromContextFieldin classEfxBaseListener- Parameters:
ctx- the parse tree
-
exitAssetType
public void exitAssetType(EfxParser.AssetTypeContext ctx)
Description copied from class:EfxBaseListenerExit a parse tree produced byEfxParser.assetType().The default implementation does nothing.
- Specified by:
exitAssetTypein interfaceEfxListener- Overrides:
exitAssetTypein classEfxBaseListener- Parameters:
ctx- the parse tree
-
exitLabelType
public void exitLabelType(EfxParser.LabelTypeContext ctx)
Description copied from class:EfxBaseListenerExit a parse tree produced byEfxParser.labelType().The default implementation does nothing.
- Specified by:
exitLabelTypein interfaceEfxListener- Overrides:
exitLabelTypein classEfxBaseListener- Parameters:
ctx- the parse tree
-
exitAssetId
public void exitAssetId(EfxParser.AssetIdContext ctx)
Description copied from class:EfxBaseListenerExit a parse tree produced byEfxParser.assetId().The default implementation does nothing.
- Specified by:
exitAssetIdin interfaceEfxListener- Overrides:
exitAssetIdin classEfxBaseListener- Parameters:
ctx- the parse tree
-
exitStandardExpressionBlock
public void exitStandardExpressionBlock(EfxParser.StandardExpressionBlockContext ctx)
Handles a standard expression block in a template line. Most of the work is done by the base class EfxExpressionTranslator. After the expression is translated, the result is passed through the renderer.- Specified by:
exitStandardExpressionBlockin interfaceEfxListener- Overrides:
exitStandardExpressionBlockin classEfxBaseListener- Parameters:
ctx- the parse tree
-
exitShorthandFieldValueReferenceFromContextField
public void exitShorthandFieldValueReferenceFromContextField(EfxParser.ShorthandFieldValueReferenceFromContextFieldContext ctx)
Handles the $value shorthand syntax which renders the value of the field declared as context in the current line of the template.- Specified by:
exitShorthandFieldValueReferenceFromContextFieldin interfaceEfxListener- Overrides:
exitShorthandFieldValueReferenceFromContextFieldin classEfxBaseListener- Parameters:
ctx- the parse tree
-
exitContextDeclarationBlock
public void exitContextDeclarationBlock(EfxParser.ContextDeclarationBlockContext ctx)
This method changes the current EFX context. The EFX context is always assumed to be either a Field or a Node. Any predicate included in the EFX context declaration is not relevant and is ignored.- Specified by:
exitContextDeclarationBlockin interfaceEfxListener- Overrides:
exitContextDeclarationBlockin classEfxBaseListener- Parameters:
ctx- the parse tree
-
exitTemplateLine
public void exitTemplateLine(EfxParser.TemplateLineContext ctx)
Template lines- Specified by:
exitTemplateLinein interfaceEfxListener- Overrides:
exitTemplateLinein classEfxBaseListener- Parameters:
ctx- the parse tree
-
-