Class Cql2ElmVisitor

java.lang.Object
org.antlr.v4.runtime.tree.AbstractParseTreeVisitor<Object>
org.cqframework.cql.gen.cqlBaseVisitor<Object>
All Implemented Interfaces:
org.antlr.v4.runtime.tree.ParseTreeVisitor<Object>, org.cqframework.cql.gen.cqlVisitor<Object>

public class Cql2ElmVisitor extends CqlPreprocessorElmCommonVisitor
  • Constructor Details

    • Cql2ElmVisitor

      public Cql2ElmVisitor(LibraryBuilder libraryBuilder, org.antlr.v4.runtime.TokenStream tokenStream, LibraryInfo libraryInfo)
  • Method Details

    • getRetrieves

      public List<org.hl7.elm.r1.Retrieve> getRetrieves()
    • getExpressions

      public List<org.hl7.elm.r1.Expression> getExpressions()
    • visitLibrary

      public Object visitLibrary(org.cqframework.cql.gen.cqlParser.LibraryContext ctx)
      Specified by:
      visitLibrary in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitLibrary in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitLibraryDefinition

      public org.hl7.elm.r1.VersionedIdentifier visitLibraryDefinition(org.cqframework.cql.gen.cqlParser.LibraryDefinitionContext ctx)
      Specified by:
      visitLibraryDefinition in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitLibraryDefinition in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitUsingDefinition

      public org.hl7.elm.r1.UsingDef visitUsingDefinition(org.cqframework.cql.gen.cqlParser.UsingDefinitionContext ctx)
      Specified by:
      visitUsingDefinition in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitUsingDefinition in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • getModel

      public Model getModel()
    • getModel

      public Model getModel(String modelName)
    • getModel

      public Model getModel(org.hl7.cql.model.NamespaceInfo modelNamespace, String modelName, String version, String localIdentifier)
      Overrides:
      getModel in class CqlPreprocessorElmCommonVisitor
    • visitIncludeDefinition

      public Object visitIncludeDefinition(org.cqframework.cql.gen.cqlParser.IncludeDefinitionContext ctx)
      Specified by:
      visitIncludeDefinition in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitIncludeDefinition in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitParameterDefinition

      public org.hl7.elm.r1.ParameterDef visitParameterDefinition(org.cqframework.cql.gen.cqlParser.ParameterDefinitionContext ctx)
      Specified by:
      visitParameterDefinition in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitParameterDefinition in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitTupleElementDefinition

      public org.hl7.elm.r1.TupleElementDefinition visitTupleElementDefinition(org.cqframework.cql.gen.cqlParser.TupleElementDefinitionContext ctx)
      Specified by:
      visitTupleElementDefinition in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitTupleElementDefinition in class CqlPreprocessorElmCommonVisitor
    • visitAccessModifier

      public org.hl7.elm.r1.AccessModifier visitAccessModifier(org.cqframework.cql.gen.cqlParser.AccessModifierContext ctx)
      Specified by:
      visitAccessModifier in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitAccessModifier in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitCodesystemDefinition

      public org.hl7.elm.r1.CodeSystemDef visitCodesystemDefinition(org.cqframework.cql.gen.cqlParser.CodesystemDefinitionContext ctx)
      Specified by:
      visitCodesystemDefinition in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitCodesystemDefinition in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitCodesystemIdentifier

      public org.hl7.elm.r1.CodeSystemRef visitCodesystemIdentifier(org.cqframework.cql.gen.cqlParser.CodesystemIdentifierContext ctx)
      Specified by:
      visitCodesystemIdentifier in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitCodesystemIdentifier in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitCodeIdentifier

      public org.hl7.elm.r1.CodeRef visitCodeIdentifier(org.cqframework.cql.gen.cqlParser.CodeIdentifierContext ctx)
      Specified by:
      visitCodeIdentifier in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitCodeIdentifier in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitValuesetDefinition

      public org.hl7.elm.r1.ValueSetDef visitValuesetDefinition(org.cqframework.cql.gen.cqlParser.ValuesetDefinitionContext ctx)
      Specified by:
      visitValuesetDefinition in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitValuesetDefinition in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitCodeDefinition

      public org.hl7.elm.r1.CodeDef visitCodeDefinition(org.cqframework.cql.gen.cqlParser.CodeDefinitionContext ctx)
      Specified by:
      visitCodeDefinition in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitCodeDefinition in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitConceptDefinition

      public org.hl7.elm.r1.ConceptDef visitConceptDefinition(org.cqframework.cql.gen.cqlParser.ConceptDefinitionContext ctx)
      Specified by:
      visitConceptDefinition in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitConceptDefinition in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitNamedTypeSpecifier

      public org.hl7.elm.r1.NamedTypeSpecifier visitNamedTypeSpecifier(org.cqframework.cql.gen.cqlParser.NamedTypeSpecifierContext ctx)
      Specified by:
      visitNamedTypeSpecifier in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitNamedTypeSpecifier in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitContextDefinition

      public Object visitContextDefinition(org.cqframework.cql.gen.cqlParser.ContextDefinitionContext ctx)
      Specified by:
      visitContextDefinition in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitContextDefinition in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • internalVisitExpressionDefinition

      public org.hl7.elm.r1.ExpressionDef internalVisitExpressionDefinition(org.cqframework.cql.gen.cqlParser.ExpressionDefinitionContext ctx)
    • visitExpressionDefinition

      public org.hl7.elm.r1.ExpressionDef visitExpressionDefinition(org.cqframework.cql.gen.cqlParser.ExpressionDefinitionContext ctx)
      Specified by:
      visitExpressionDefinition in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitExpressionDefinition in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitStringLiteral

      public org.hl7.elm.r1.Literal visitStringLiteral(org.cqframework.cql.gen.cqlParser.StringLiteralContext ctx)
      Specified by:
      visitStringLiteral in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitStringLiteral in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitSimpleStringLiteral

      public org.hl7.elm.r1.Literal visitSimpleStringLiteral(org.cqframework.cql.gen.cqlParser.SimpleStringLiteralContext ctx)
      Specified by:
      visitSimpleStringLiteral in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitSimpleStringLiteral in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitBooleanLiteral

      public org.hl7.elm.r1.Literal visitBooleanLiteral(org.cqframework.cql.gen.cqlParser.BooleanLiteralContext ctx)
      Specified by:
      visitBooleanLiteral in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitBooleanLiteral in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitIntervalSelector

      public Object visitIntervalSelector(org.cqframework.cql.gen.cqlParser.IntervalSelectorContext ctx)
      Specified by:
      visitIntervalSelector in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitIntervalSelector in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitTupleElementSelector

      public Object visitTupleElementSelector(org.cqframework.cql.gen.cqlParser.TupleElementSelectorContext ctx)
      Specified by:
      visitTupleElementSelector in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitTupleElementSelector in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitTupleSelector

      public Object visitTupleSelector(org.cqframework.cql.gen.cqlParser.TupleSelectorContext ctx)
      Specified by:
      visitTupleSelector in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitTupleSelector in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitInstanceElementSelector

      public Object visitInstanceElementSelector(org.cqframework.cql.gen.cqlParser.InstanceElementSelectorContext ctx)
      Specified by:
      visitInstanceElementSelector in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitInstanceElementSelector in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitInstanceSelector

      public Object visitInstanceSelector(org.cqframework.cql.gen.cqlParser.InstanceSelectorContext ctx)
      Specified by:
      visitInstanceSelector in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitInstanceSelector in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitCodeSelector

      public Object visitCodeSelector(org.cqframework.cql.gen.cqlParser.CodeSelectorContext ctx)
      Specified by:
      visitCodeSelector in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitCodeSelector in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitConceptSelector

      public Object visitConceptSelector(org.cqframework.cql.gen.cqlParser.ConceptSelectorContext ctx)
      Specified by:
      visitConceptSelector in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitConceptSelector in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitListSelector

      public Object visitListSelector(org.cqframework.cql.gen.cqlParser.ListSelectorContext ctx)
      Specified by:
      visitListSelector in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitListSelector in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitTimeLiteral

      public Object visitTimeLiteral(org.cqframework.cql.gen.cqlParser.TimeLiteralContext ctx)
      Specified by:
      visitTimeLiteral in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitTimeLiteral in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitDateLiteral

      public Object visitDateLiteral(org.cqframework.cql.gen.cqlParser.DateLiteralContext ctx)
      Specified by:
      visitDateLiteral in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitDateLiteral in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitDateTimeLiteral

      public Object visitDateTimeLiteral(org.cqframework.cql.gen.cqlParser.DateTimeLiteralContext ctx)
      Specified by:
      visitDateTimeLiteral in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitDateTimeLiteral in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitNullLiteral

      public org.hl7.elm.r1.Null visitNullLiteral(org.cqframework.cql.gen.cqlParser.NullLiteralContext ctx)
      Specified by:
      visitNullLiteral in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitNullLiteral in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitNumberLiteral

      public org.hl7.elm.r1.Expression visitNumberLiteral(org.cqframework.cql.gen.cqlParser.NumberLiteralContext ctx)
      Specified by:
      visitNumberLiteral in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitNumberLiteral in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitSimpleNumberLiteral

      public org.hl7.elm.r1.Expression visitSimpleNumberLiteral(org.cqframework.cql.gen.cqlParser.SimpleNumberLiteralContext ctx)
      Specified by:
      visitSimpleNumberLiteral in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitSimpleNumberLiteral in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitLongNumberLiteral

      public org.hl7.elm.r1.Literal visitLongNumberLiteral(org.cqframework.cql.gen.cqlParser.LongNumberLiteralContext ctx)
      Specified by:
      visitLongNumberLiteral in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitLongNumberLiteral in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitQuantity

      public org.hl7.elm.r1.Expression visitQuantity(org.cqframework.cql.gen.cqlParser.QuantityContext ctx)
      Specified by:
      visitQuantity in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitQuantity in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitRatio

      public org.hl7.elm.r1.Expression visitRatio(org.cqframework.cql.gen.cqlParser.RatioContext ctx)
      Specified by:
      visitRatio in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitRatio in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitNotExpression

      public org.hl7.elm.r1.Not visitNotExpression(org.cqframework.cql.gen.cqlParser.NotExpressionContext ctx)
      Specified by:
      visitNotExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitNotExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitExistenceExpression

      public org.hl7.elm.r1.Exists visitExistenceExpression(org.cqframework.cql.gen.cqlParser.ExistenceExpressionContext ctx)
      Specified by:
      visitExistenceExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitExistenceExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitMultiplicationExpressionTerm

      public org.hl7.elm.r1.BinaryExpression visitMultiplicationExpressionTerm(org.cqframework.cql.gen.cqlParser.MultiplicationExpressionTermContext ctx)
      Specified by:
      visitMultiplicationExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitMultiplicationExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitPowerExpressionTerm

      public org.hl7.elm.r1.Power visitPowerExpressionTerm(org.cqframework.cql.gen.cqlParser.PowerExpressionTermContext ctx)
      Specified by:
      visitPowerExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitPowerExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitPolarityExpressionTerm

      public Object visitPolarityExpressionTerm(org.cqframework.cql.gen.cqlParser.PolarityExpressionTermContext ctx)
      Specified by:
      visitPolarityExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitPolarityExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitAdditionExpressionTerm

      public org.hl7.elm.r1.Expression visitAdditionExpressionTerm(org.cqframework.cql.gen.cqlParser.AdditionExpressionTermContext ctx)
      Specified by:
      visitAdditionExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitAdditionExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitPredecessorExpressionTerm

      public Object visitPredecessorExpressionTerm(org.cqframework.cql.gen.cqlParser.PredecessorExpressionTermContext ctx)
      Specified by:
      visitPredecessorExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitPredecessorExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitSuccessorExpressionTerm

      public Object visitSuccessorExpressionTerm(org.cqframework.cql.gen.cqlParser.SuccessorExpressionTermContext ctx)
      Specified by:
      visitSuccessorExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitSuccessorExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitElementExtractorExpressionTerm

      public Object visitElementExtractorExpressionTerm(org.cqframework.cql.gen.cqlParser.ElementExtractorExpressionTermContext ctx)
      Specified by:
      visitElementExtractorExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitElementExtractorExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitPointExtractorExpressionTerm

      public Object visitPointExtractorExpressionTerm(org.cqframework.cql.gen.cqlParser.PointExtractorExpressionTermContext ctx)
      Specified by:
      visitPointExtractorExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitPointExtractorExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitTypeExtentExpressionTerm

      public Object visitTypeExtentExpressionTerm(org.cqframework.cql.gen.cqlParser.TypeExtentExpressionTermContext ctx)
      Specified by:
      visitTypeExtentExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitTypeExtentExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitTimeBoundaryExpressionTerm

      public Object visitTimeBoundaryExpressionTerm(org.cqframework.cql.gen.cqlParser.TimeBoundaryExpressionTermContext ctx)
      Specified by:
      visitTimeBoundaryExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitTimeBoundaryExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitTimeUnitExpressionTerm

      public Object visitTimeUnitExpressionTerm(org.cqframework.cql.gen.cqlParser.TimeUnitExpressionTermContext ctx)
      Specified by:
      visitTimeUnitExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitTimeUnitExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitDurationExpressionTerm

      public Object visitDurationExpressionTerm(org.cqframework.cql.gen.cqlParser.DurationExpressionTermContext ctx)
      Specified by:
      visitDurationExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitDurationExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitDifferenceExpressionTerm

      public Object visitDifferenceExpressionTerm(org.cqframework.cql.gen.cqlParser.DifferenceExpressionTermContext ctx)
      Specified by:
      visitDifferenceExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitDifferenceExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitBetweenExpression

      public Object visitBetweenExpression(org.cqframework.cql.gen.cqlParser.BetweenExpressionContext ctx)
      Specified by:
      visitBetweenExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitBetweenExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitDurationBetweenExpression

      public Object visitDurationBetweenExpression(org.cqframework.cql.gen.cqlParser.DurationBetweenExpressionContext ctx)
      Specified by:
      visitDurationBetweenExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitDurationBetweenExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitDifferenceBetweenExpression

      public Object visitDifferenceBetweenExpression(org.cqframework.cql.gen.cqlParser.DifferenceBetweenExpressionContext ctx)
      Specified by:
      visitDifferenceBetweenExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitDifferenceBetweenExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitWidthExpressionTerm

      public Object visitWidthExpressionTerm(org.cqframework.cql.gen.cqlParser.WidthExpressionTermContext ctx)
      Specified by:
      visitWidthExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitWidthExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitParenthesizedTerm

      public org.hl7.elm.r1.Expression visitParenthesizedTerm(org.cqframework.cql.gen.cqlParser.ParenthesizedTermContext ctx)
      Specified by:
      visitParenthesizedTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitParenthesizedTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitMembershipExpression

      public Object visitMembershipExpression(org.cqframework.cql.gen.cqlParser.MembershipExpressionContext ctx)
      Specified by:
      visitMembershipExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitMembershipExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitAndExpression

      public org.hl7.elm.r1.And visitAndExpression(org.cqframework.cql.gen.cqlParser.AndExpressionContext ctx)
      Specified by:
      visitAndExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitAndExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitOrExpression

      public org.hl7.elm.r1.Expression visitOrExpression(org.cqframework.cql.gen.cqlParser.OrExpressionContext ctx)
      Specified by:
      visitOrExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitOrExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitImpliesExpression

      public org.hl7.elm.r1.Expression visitImpliesExpression(org.cqframework.cql.gen.cqlParser.ImpliesExpressionContext ctx)
      Specified by:
      visitImpliesExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitImpliesExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitInFixSetExpression

      public Object visitInFixSetExpression(org.cqframework.cql.gen.cqlParser.InFixSetExpressionContext ctx)
      Specified by:
      visitInFixSetExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitInFixSetExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitEqualityExpression

      public org.hl7.elm.r1.Expression visitEqualityExpression(org.cqframework.cql.gen.cqlParser.EqualityExpressionContext ctx)
      Specified by:
      visitEqualityExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitEqualityExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitInequalityExpression

      public org.hl7.elm.r1.BinaryExpression visitInequalityExpression(org.cqframework.cql.gen.cqlParser.InequalityExpressionContext ctx)
      Specified by:
      visitInequalityExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitInequalityExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitQualifiedIdentifier

      public List<String> visitQualifiedIdentifier(org.cqframework.cql.gen.cqlParser.QualifiedIdentifierContext ctx)
      Specified by:
      visitQualifiedIdentifier in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitQualifiedIdentifier in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitQualifiedIdentifierExpression

      public List<String> visitQualifiedIdentifierExpression(org.cqframework.cql.gen.cqlParser.QualifiedIdentifierExpressionContext ctx)
      Specified by:
      visitQualifiedIdentifierExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitQualifiedIdentifierExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitSimplePathReferentialIdentifier

      public String visitSimplePathReferentialIdentifier(org.cqframework.cql.gen.cqlParser.SimplePathReferentialIdentifierContext ctx)
      Specified by:
      visitSimplePathReferentialIdentifier in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitSimplePathReferentialIdentifier in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitSimplePathQualifiedIdentifier

      public String visitSimplePathQualifiedIdentifier(org.cqframework.cql.gen.cqlParser.SimplePathQualifiedIdentifierContext ctx)
      Specified by:
      visitSimplePathQualifiedIdentifier in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitSimplePathQualifiedIdentifier in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitSimplePathIndexer

      public String visitSimplePathIndexer(org.cqframework.cql.gen.cqlParser.SimplePathIndexerContext ctx)
      Specified by:
      visitSimplePathIndexer in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitSimplePathIndexer in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitTermExpression

      public Object visitTermExpression(org.cqframework.cql.gen.cqlParser.TermExpressionContext ctx)
      Specified by:
      visitTermExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitTermExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitTerminal

      public Object visitTerminal(org.antlr.v4.runtime.tree.TerminalNode node)
      Specified by:
      visitTerminal in interface org.antlr.v4.runtime.tree.ParseTreeVisitor<Object>
      Overrides:
      visitTerminal in class org.antlr.v4.runtime.tree.AbstractParseTreeVisitor<Object>
    • visitConversionExpressionTerm

      public Object visitConversionExpressionTerm(org.cqframework.cql.gen.cqlParser.ConversionExpressionTermContext ctx)
      Specified by:
      visitConversionExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitConversionExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitTypeExpression

      public Object visitTypeExpression(org.cqframework.cql.gen.cqlParser.TypeExpressionContext ctx)
      Specified by:
      visitTypeExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitTypeExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitCastExpression

      public Object visitCastExpression(org.cqframework.cql.gen.cqlParser.CastExpressionContext ctx)
      Specified by:
      visitCastExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitCastExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitBooleanExpression

      public org.hl7.elm.r1.Expression visitBooleanExpression(org.cqframework.cql.gen.cqlParser.BooleanExpressionContext ctx)
      Specified by:
      visitBooleanExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitBooleanExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitTimingExpression

      public Object visitTimingExpression(org.cqframework.cql.gen.cqlParser.TimingExpressionContext ctx)
      Specified by:
      visitTimingExpression in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitTimingExpression in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitConcurrentWithIntervalOperatorPhrase

      public Object visitConcurrentWithIntervalOperatorPhrase(org.cqframework.cql.gen.cqlParser.ConcurrentWithIntervalOperatorPhraseContext ctx)
      Specified by:
      visitConcurrentWithIntervalOperatorPhrase in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitConcurrentWithIntervalOperatorPhrase in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitIncludesIntervalOperatorPhrase

      public Object visitIncludesIntervalOperatorPhrase(org.cqframework.cql.gen.cqlParser.IncludesIntervalOperatorPhraseContext ctx)
      Specified by:
      visitIncludesIntervalOperatorPhrase in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitIncludesIntervalOperatorPhrase in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitIncludedInIntervalOperatorPhrase

      public Object visitIncludedInIntervalOperatorPhrase(org.cqframework.cql.gen.cqlParser.IncludedInIntervalOperatorPhraseContext ctx)
      Specified by:
      visitIncludedInIntervalOperatorPhrase in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitIncludedInIntervalOperatorPhrase in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitBeforeOrAfterIntervalOperatorPhrase

      public Object visitBeforeOrAfterIntervalOperatorPhrase(org.cqframework.cql.gen.cqlParser.BeforeOrAfterIntervalOperatorPhraseContext ctx)
      Specified by:
      visitBeforeOrAfterIntervalOperatorPhrase in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitBeforeOrAfterIntervalOperatorPhrase in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitWithinIntervalOperatorPhrase

      public Object visitWithinIntervalOperatorPhrase(org.cqframework.cql.gen.cqlParser.WithinIntervalOperatorPhraseContext ctx)
      Specified by:
      visitWithinIntervalOperatorPhrase in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitWithinIntervalOperatorPhrase in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitMeetsIntervalOperatorPhrase

      public Object visitMeetsIntervalOperatorPhrase(org.cqframework.cql.gen.cqlParser.MeetsIntervalOperatorPhraseContext ctx)
      Specified by:
      visitMeetsIntervalOperatorPhrase in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitMeetsIntervalOperatorPhrase in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitOverlapsIntervalOperatorPhrase

      public Object visitOverlapsIntervalOperatorPhrase(org.cqframework.cql.gen.cqlParser.OverlapsIntervalOperatorPhraseContext ctx)
      Specified by:
      visitOverlapsIntervalOperatorPhrase in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitOverlapsIntervalOperatorPhrase in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitStartsIntervalOperatorPhrase

      public Object visitStartsIntervalOperatorPhrase(org.cqframework.cql.gen.cqlParser.StartsIntervalOperatorPhraseContext ctx)
      Specified by:
      visitStartsIntervalOperatorPhrase in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitStartsIntervalOperatorPhrase in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitEndsIntervalOperatorPhrase

      public Object visitEndsIntervalOperatorPhrase(org.cqframework.cql.gen.cqlParser.EndsIntervalOperatorPhraseContext ctx)
      Specified by:
      visitEndsIntervalOperatorPhrase in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitEndsIntervalOperatorPhrase in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • resolveIfThenElse

      public org.hl7.elm.r1.Expression resolveIfThenElse(org.hl7.elm.r1.If ifObject)
    • visitIfThenElseExpressionTerm

      public Object visitIfThenElseExpressionTerm(org.cqframework.cql.gen.cqlParser.IfThenElseExpressionTermContext ctx)
      Specified by:
      visitIfThenElseExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitIfThenElseExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitCaseExpressionTerm

      public Object visitCaseExpressionTerm(org.cqframework.cql.gen.cqlParser.CaseExpressionTermContext ctx)
      Specified by:
      visitCaseExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitCaseExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitCaseExpressionItem

      public Object visitCaseExpressionItem(org.cqframework.cql.gen.cqlParser.CaseExpressionItemContext ctx)
      Specified by:
      visitCaseExpressionItem in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitCaseExpressionItem in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitAggregateExpressionTerm

      public Object visitAggregateExpressionTerm(org.cqframework.cql.gen.cqlParser.AggregateExpressionTermContext ctx)
      Specified by:
      visitAggregateExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitAggregateExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitSetAggregateExpressionTerm

      public Object visitSetAggregateExpressionTerm(org.cqframework.cql.gen.cqlParser.SetAggregateExpressionTermContext ctx)
      Specified by:
      visitSetAggregateExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitSetAggregateExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitRetrieve

      public org.hl7.elm.r1.Expression visitRetrieve(org.cqframework.cql.gen.cqlParser.RetrieveContext ctx)
      Specified by:
      visitRetrieve in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitRetrieve in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitSourceClause

      public Object visitSourceClause(org.cqframework.cql.gen.cqlParser.SourceClauseContext ctx)
      Specified by:
      visitSourceClause in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitSourceClause in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitQuery

      public Object visitQuery(org.cqframework.cql.gen.cqlParser.QueryContext ctx)
      Specified by:
      visitQuery in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitQuery in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • optimizeDateRangeInQuery

      public org.hl7.elm.r1.Expression optimizeDateRangeInQuery(org.hl7.elm.r1.Expression where, org.hl7.elm.r1.AliasedQuerySource aqs)
      Some systems may wish to optimize performance by restricting retrieves with available date ranges. Specifying date ranges in a retrieve was removed from the CQL grammar, but it is still possible to extract date ranges from the where clause and put them in the Retrieve in ELM. The optimizeDateRangeInQuery method attempts to do this automatically. If optimization is possible, it will remove the corresponding "during" from the where clause and insert the date range into the Retrieve.
      Parameters:
      where - the Where clause to search for potential date range optimizations
      aqs - the AliasedQuerySource containing the ClinicalRequest to possibly refactor a date range into.
      Returns:
      the where clause with optimized "durings" removed, or null if there is no longer a Where clause after optimization.
    • visitLetClause

      public Object visitLetClause(org.cqframework.cql.gen.cqlParser.LetClauseContext ctx)
      Specified by:
      visitLetClause in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitLetClause in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitLetClauseItem

      public Object visitLetClauseItem(org.cqframework.cql.gen.cqlParser.LetClauseItemContext ctx)
      Specified by:
      visitLetClauseItem in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitLetClauseItem in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitAliasedQuerySource

      public Object visitAliasedQuerySource(org.cqframework.cql.gen.cqlParser.AliasedQuerySourceContext ctx)
      Specified by:
      visitAliasedQuerySource in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitAliasedQuerySource in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitWithClause

      public Object visitWithClause(org.cqframework.cql.gen.cqlParser.WithClauseContext ctx)
      Specified by:
      visitWithClause in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitWithClause in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitWithoutClause

      public Object visitWithoutClause(org.cqframework.cql.gen.cqlParser.WithoutClauseContext ctx)
      Specified by:
      visitWithoutClause in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitWithoutClause in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitWhereClause

      public Object visitWhereClause(org.cqframework.cql.gen.cqlParser.WhereClauseContext ctx)
      Specified by:
      visitWhereClause in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitWhereClause in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitReturnClause

      public Object visitReturnClause(org.cqframework.cql.gen.cqlParser.ReturnClauseContext ctx)
      Specified by:
      visitReturnClause in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitReturnClause in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitStartingClause

      public Object visitStartingClause(org.cqframework.cql.gen.cqlParser.StartingClauseContext ctx)
      Specified by:
      visitStartingClause in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitStartingClause in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitAggregateClause

      public Object visitAggregateClause(org.cqframework.cql.gen.cqlParser.AggregateClauseContext ctx)
      Specified by:
      visitAggregateClause in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitAggregateClause in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitSortDirection

      public org.hl7.elm.r1.SortDirection visitSortDirection(org.cqframework.cql.gen.cqlParser.SortDirectionContext ctx)
      Specified by:
      visitSortDirection in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitSortDirection in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitSortByItem

      public org.hl7.elm.r1.SortByItem visitSortByItem(org.cqframework.cql.gen.cqlParser.SortByItemContext ctx)
      Specified by:
      visitSortByItem in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitSortByItem in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitSortClause

      public Object visitSortClause(org.cqframework.cql.gen.cqlParser.SortClauseContext ctx)
      Specified by:
      visitSortClause in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitSortClause in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitQuerySource

      public Object visitQuerySource(org.cqframework.cql.gen.cqlParser.QuerySourceContext ctx)
      Specified by:
      visitQuerySource in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitQuerySource in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitIndexedExpressionTerm

      public Object visitIndexedExpressionTerm(org.cqframework.cql.gen.cqlParser.IndexedExpressionTermContext ctx)
      Specified by:
      visitIndexedExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitIndexedExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitInvocationExpressionTerm

      public org.hl7.elm.r1.Expression visitInvocationExpressionTerm(org.cqframework.cql.gen.cqlParser.InvocationExpressionTermContext ctx)
      Specified by:
      visitInvocationExpressionTerm in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitInvocationExpressionTerm in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitExternalConstant

      public org.hl7.elm.r1.Expression visitExternalConstant(org.cqframework.cql.gen.cqlParser.ExternalConstantContext ctx)
      Specified by:
      visitExternalConstant in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitExternalConstant in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitThisInvocation

      public org.hl7.elm.r1.Expression visitThisInvocation(org.cqframework.cql.gen.cqlParser.ThisInvocationContext ctx)
      Specified by:
      visitThisInvocation in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitThisInvocation in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitMemberInvocation

      public org.hl7.elm.r1.Expression visitMemberInvocation(org.cqframework.cql.gen.cqlParser.MemberInvocationContext ctx)
      Specified by:
      visitMemberInvocation in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitMemberInvocation in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitQualifiedMemberInvocation

      public org.hl7.elm.r1.Expression visitQualifiedMemberInvocation(org.cqframework.cql.gen.cqlParser.QualifiedMemberInvocationContext ctx)
      Specified by:
      visitQualifiedMemberInvocation in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitQualifiedMemberInvocation in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • resolveQualifiedIdentifier

      public org.hl7.elm.r1.Expression resolveQualifiedIdentifier(List<String> identifiers)
    • resolveMemberIdentifier

      public org.hl7.elm.r1.Expression resolveMemberIdentifier(String identifier)
    • resolveFunction

      public org.hl7.elm.r1.Expression resolveFunction(String libraryName, String functionName, List<org.hl7.elm.r1.Expression> expressions, boolean mustResolve, boolean allowPromotionAndDemotion, boolean allowFluent)
    • resolveFunctionOrQualifiedFunction

      public org.hl7.elm.r1.Expression resolveFunctionOrQualifiedFunction(String identifier, org.cqframework.cql.gen.cqlParser.ParamListContext paramListCtx)
    • visitFunction

      public org.hl7.elm.r1.Expression visitFunction(org.cqframework.cql.gen.cqlParser.FunctionContext ctx)
      Specified by:
      visitFunction in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitFunction in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitQualifiedFunction

      public org.hl7.elm.r1.Expression visitQualifiedFunction(org.cqframework.cql.gen.cqlParser.QualifiedFunctionContext ctx)
      Specified by:
      visitQualifiedFunction in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitQualifiedFunction in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • visitFunctionBody

      public Object visitFunctionBody(org.cqframework.cql.gen.cqlParser.FunctionBodyContext ctx)
      Specified by:
      visitFunctionBody in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitFunctionBody in class org.cqframework.cql.gen.cqlBaseVisitor<Object>
    • registerFunctionDefinition

      public void registerFunctionDefinition(org.cqframework.cql.gen.cqlParser.FunctionDefinitionContext ctx)
    • compileFunctionDefinition

      public org.hl7.elm.r1.FunctionDef compileFunctionDefinition(org.cqframework.cql.gen.cqlParser.FunctionDefinitionContext ctx)
    • visitFunctionDefinition

      public Object visitFunctionDefinition(org.cqframework.cql.gen.cqlParser.FunctionDefinitionContext ctx)
      Specified by:
      visitFunctionDefinition in interface org.cqframework.cql.gen.cqlVisitor<Object>
      Overrides:
      visitFunctionDefinition in class org.cqframework.cql.gen.cqlBaseVisitor<Object>