text: // Generated from FSH.g4 by ANTLR 4.8
  // jshint ignore: start
  var antlr4 = require('antlr4/index');
  
  // This class defines a complete listener for a parse tree produced by FSHParser.
  function FSHListener() {
  	antlr4.tree.ParseTreeListener.call(this);
  	return this;
  }
  
  FSHListener.prototype = Object.create(antlr4.tree.ParseTreeListener.prototype);
  FSHListener.prototype.constructor = FSHListener;
  
  // Enter a parse tree produced by FSHParser#doc.
  FSHListener.prototype.enterDoc = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#doc.
  FSHListener.prototype.exitDoc = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#entity.
  FSHListener.prototype.enterEntity = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#entity.
  FSHListener.prototype.exitEntity = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#alias.
  FSHListener.prototype.enterAlias = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#alias.
  FSHListener.prototype.exitAlias = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#profile.
  FSHListener.prototype.enterProfile = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#profile.
  FSHListener.prototype.exitProfile = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#extension.
  FSHListener.prototype.enterExtension = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#extension.
  FSHListener.prototype.exitExtension = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#logical.
  FSHListener.prototype.enterLogical = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#logical.
  FSHListener.prototype.exitLogical = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#resource.
  FSHListener.prototype.enterResource = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#resource.
  FSHListener.prototype.exitResource = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#sdMetadata.
  FSHListener.prototype.enterSdMetadata = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#sdMetadata.
  FSHListener.prototype.exitSdMetadata = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#sdRule.
  FSHListener.prototype.enterSdRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#sdRule.
  FSHListener.prototype.exitSdRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#lrRule.
  FSHListener.prototype.enterLrRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#lrRule.
  FSHListener.prototype.exitLrRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#instance.
  FSHListener.prototype.enterInstance = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#instance.
  FSHListener.prototype.exitInstance = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#instanceMetadata.
  FSHListener.prototype.enterInstanceMetadata = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#instanceMetadata.
  FSHListener.prototype.exitInstanceMetadata = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#instanceRule.
  FSHListener.prototype.enterInstanceRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#instanceRule.
  FSHListener.prototype.exitInstanceRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#invariant.
  FSHListener.prototype.enterInvariant = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#invariant.
  FSHListener.prototype.exitInvariant = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#invariantMetadata.
  FSHListener.prototype.enterInvariantMetadata = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#invariantMetadata.
  FSHListener.prototype.exitInvariantMetadata = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#valueSet.
  FSHListener.prototype.enterValueSet = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#valueSet.
  FSHListener.prototype.exitValueSet = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#vsMetadata.
  FSHListener.prototype.enterVsMetadata = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#vsMetadata.
  FSHListener.prototype.exitVsMetadata = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#vsRule.
  FSHListener.prototype.enterVsRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#vsRule.
  FSHListener.prototype.exitVsRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#codeSystem.
  FSHListener.prototype.enterCodeSystem = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#codeSystem.
  FSHListener.prototype.exitCodeSystem = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#csMetadata.
  FSHListener.prototype.enterCsMetadata = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#csMetadata.
  FSHListener.prototype.exitCsMetadata = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#csRule.
  FSHListener.prototype.enterCsRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#csRule.
  FSHListener.prototype.exitCsRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#ruleSet.
  FSHListener.prototype.enterRuleSet = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#ruleSet.
  FSHListener.prototype.exitRuleSet = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#ruleSetRule.
  FSHListener.prototype.enterRuleSetRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#ruleSetRule.
  FSHListener.prototype.exitRuleSetRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#paramRuleSet.
  FSHListener.prototype.enterParamRuleSet = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#paramRuleSet.
  FSHListener.prototype.exitParamRuleSet = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#paramRuleSetContent.
  FSHListener.prototype.enterParamRuleSetContent = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#paramRuleSetContent.
  FSHListener.prototype.exitParamRuleSetContent = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#mapping.
  FSHListener.prototype.enterMapping = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#mapping.
  FSHListener.prototype.exitMapping = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#mappingMetadata.
  FSHListener.prototype.enterMappingMetadata = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#mappingMetadata.
  FSHListener.prototype.exitMappingMetadata = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#mappingEntityRule.
  FSHListener.prototype.enterMappingEntityRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#mappingEntityRule.
  FSHListener.prototype.exitMappingEntityRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#parent.
  FSHListener.prototype.enterParent = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#parent.
  FSHListener.prototype.exitParent = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#id.
  FSHListener.prototype.enterId = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#id.
  FSHListener.prototype.exitId = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#title.
  FSHListener.prototype.enterTitle = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#title.
  FSHListener.prototype.exitTitle = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#description.
  FSHListener.prototype.enterDescription = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#description.
  FSHListener.prototype.exitDescription = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#expression.
  FSHListener.prototype.enterExpression = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#expression.
  FSHListener.prototype.exitExpression = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#xpath.
  FSHListener.prototype.enterXpath = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#xpath.
  FSHListener.prototype.exitXpath = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#severity.
  FSHListener.prototype.enterSeverity = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#severity.
  FSHListener.prototype.exitSeverity = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#instanceOf.
  FSHListener.prototype.enterInstanceOf = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#instanceOf.
  FSHListener.prototype.exitInstanceOf = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#usage.
  FSHListener.prototype.enterUsage = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#usage.
  FSHListener.prototype.exitUsage = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#mixins.
  FSHListener.prototype.enterMixins = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#mixins.
  FSHListener.prototype.exitMixins = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#source.
  FSHListener.prototype.enterSource = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#source.
  FSHListener.prototype.exitSource = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#target.
  FSHListener.prototype.enterTarget = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#target.
  FSHListener.prototype.exitTarget = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#cardRule.
  FSHListener.prototype.enterCardRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#cardRule.
  FSHListener.prototype.exitCardRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#flagRule.
  FSHListener.prototype.enterFlagRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#flagRule.
  FSHListener.prototype.exitFlagRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#valueSetRule.
  FSHListener.prototype.enterValueSetRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#valueSetRule.
  FSHListener.prototype.exitValueSetRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#fixedValueRule.
  FSHListener.prototype.enterFixedValueRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#fixedValueRule.
  FSHListener.prototype.exitFixedValueRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#containsRule.
  FSHListener.prototype.enterContainsRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#containsRule.
  FSHListener.prototype.exitContainsRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#onlyRule.
  FSHListener.prototype.enterOnlyRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#onlyRule.
  FSHListener.prototype.exitOnlyRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#obeysRule.
  FSHListener.prototype.enterObeysRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#obeysRule.
  FSHListener.prototype.exitObeysRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#caretValueRule.
  FSHListener.prototype.enterCaretValueRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#caretValueRule.
  FSHListener.prototype.exitCaretValueRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#mappingRule.
  FSHListener.prototype.enterMappingRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#mappingRule.
  FSHListener.prototype.exitMappingRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#insertRule.
  FSHListener.prototype.enterInsertRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#insertRule.
  FSHListener.prototype.exitInsertRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#addElementRule.
  FSHListener.prototype.enterAddElementRule = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#addElementRule.
  FSHListener.prototype.exitAddElementRule = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#vsComponent.
  FSHListener.prototype.enterVsComponent = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#vsComponent.
  FSHListener.prototype.exitVsComponent = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#vsConceptComponent.
  FSHListener.prototype.enterVsConceptComponent = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#vsConceptComponent.
  FSHListener.prototype.exitVsConceptComponent = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#vsFilterComponent.
  FSHListener.prototype.enterVsFilterComponent = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#vsFilterComponent.
  FSHListener.prototype.exitVsFilterComponent = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#vsComponentFrom.
  FSHListener.prototype.enterVsComponentFrom = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#vsComponentFrom.
  FSHListener.prototype.exitVsComponentFrom = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#vsFromSystem.
  FSHListener.prototype.enterVsFromSystem = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#vsFromSystem.
  FSHListener.prototype.exitVsFromSystem = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#vsFromValueset.
  FSHListener.prototype.enterVsFromValueset = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#vsFromValueset.
  FSHListener.prototype.exitVsFromValueset = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#vsFilterList.
  FSHListener.prototype.enterVsFilterList = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#vsFilterList.
  FSHListener.prototype.exitVsFilterList = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#vsFilterDefinition.
  FSHListener.prototype.enterVsFilterDefinition = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#vsFilterDefinition.
  FSHListener.prototype.exitVsFilterDefinition = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#vsFilterOperator.
  FSHListener.prototype.enterVsFilterOperator = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#vsFilterOperator.
  FSHListener.prototype.exitVsFilterOperator = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#vsFilterValue.
  FSHListener.prototype.enterVsFilterValue = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#vsFilterValue.
  FSHListener.prototype.exitVsFilterValue = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#name.
  FSHListener.prototype.enterName = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#name.
  FSHListener.prototype.exitName = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#path.
  FSHListener.prototype.enterPath = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#path.
  FSHListener.prototype.exitPath = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#paths.
  FSHListener.prototype.enterPaths = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#paths.
  FSHListener.prototype.exitPaths = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#caretPath.
  FSHListener.prototype.enterCaretPath = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#caretPath.
  FSHListener.prototype.exitCaretPath = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#flag.
  FSHListener.prototype.enterFlag = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#flag.
  FSHListener.prototype.exitFlag = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#strength.
  FSHListener.prototype.enterStrength = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#strength.
  FSHListener.prototype.exitStrength = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#value.
  FSHListener.prototype.enterValue = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#value.
  FSHListener.prototype.exitValue = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#item.
  FSHListener.prototype.enterItem = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#item.
  FSHListener.prototype.exitItem = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#code.
  FSHListener.prototype.enterCode = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#code.
  FSHListener.prototype.exitCode = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#concept.
  FSHListener.prototype.enterConcept = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#concept.
  FSHListener.prototype.exitConcept = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#quantity.
  FSHListener.prototype.enterQuantity = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#quantity.
  FSHListener.prototype.exitQuantity = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#ratio.
  FSHListener.prototype.enterRatio = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#ratio.
  FSHListener.prototype.exitRatio = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#reference.
  FSHListener.prototype.enterReference = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#reference.
  FSHListener.prototype.exitReference = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#canonical.
  FSHListener.prototype.enterCanonical = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#canonical.
  FSHListener.prototype.exitCanonical = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#ratioPart.
  FSHListener.prototype.enterRatioPart = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#ratioPart.
  FSHListener.prototype.exitRatioPart = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#bool.
  FSHListener.prototype.enterBool = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#bool.
  FSHListener.prototype.exitBool = function(ctx) {
  };
  
  
  // Enter a parse tree produced by FSHParser#targetType.
  FSHListener.prototype.enterTargetType = function(ctx) {
  };
  
  // Exit a parse tree produced by FSHParser#targetType.
  FSHListener.prototype.exitTargetType = function(ctx) {
  };
  
  
  
  exports.FSHListener = FSHListener;