Class TSHCompiler
- All Implemented Interfaces:
org.antlr.v4.runtime.tree.ParseTreeVisitor<Object>,TSHVisitor<Object>
This class uses the visitor pattern to traverse the ANTLR-generated AST and build FHIR TestScript resources using the HAPI FHIR model.
The compiler handles:
- TestScript metadata (id, title, description, status, url)
- Setup, test, and teardown phases
- Operations (read, create, update, delete, search)
- Assertions (responseCode, resource, expression, etc.)
- Variables and fixtures
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.hl7.fhir.r4.model.TestScriptVisit a parse tree produced byTSHParser.description().Visit a parse tree produced by theExpressionAssertionlabeled alternative inTSHParser.assertionType().Visit a parse tree produced byTSHParser.fixture().Visit a parse tree produced byTSHParser.id().Visit a parse tree produced byTSHParser.operation().Visit a parse tree produced by theResourceEqualslabeled alternative inTSHParser.assertionType().Visit a parse tree produced by theResponseCodeEqualslabeled alternative inTSHParser.assertionType().Visit a parse tree produced by theResponseCodeInlabeled alternative inTSHParser.assertionType().Visit a parse tree produced byTSHParser.setup().Visit a parse tree produced byTSHParser.status().Visit a parse tree produced byTSHParser.teardown().Visit a parse tree produced byTSHParser.test().Visit a parse tree produced byTSHParser.testScript().Visit a parse tree produced byTSHParser.title().Visit a parse tree produced byTSHParser.url().Visit a parse tree produced byTSHParser.variable().Methods inherited from class org.fhirfrog.frog.shorthand.TSHBaseVisitor
visitAction, visitAlias, visitAssertion, visitBool, visitContentTypeEquals, visitDoc, visitEntity, visitFhirPath, visitFixtureProperty, visitMinimumIdAssertion, visitName, visitNumberList, visitOperationType, visitResourceId, visitResourceType, visitTsMetadata, visitValidateProfileAssertionMethods 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
-
TSHCompiler
public TSHCompiler()
-
-
Method Details
-
compile
-
visitTestScript
Description copied from class:TSHBaseVisitorVisit a parse tree produced byTSHParser.testScript().The default implementation returns the result of calling
AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)onctx.- Specified by:
visitTestScriptin interfaceTSHVisitor<Object>- Overrides:
visitTestScriptin classTSHBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-
visitId
Description copied from class:TSHBaseVisitorVisit a parse tree produced byTSHParser.id().The default implementation returns the result of calling
AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)onctx.- Specified by:
visitIdin interfaceTSHVisitor<Object>- Overrides:
visitIdin classTSHBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-
visitTitle
Description copied from class:TSHBaseVisitorVisit a parse tree produced byTSHParser.title().The default implementation returns the result of calling
AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)onctx.- Specified by:
visitTitlein interfaceTSHVisitor<Object>- Overrides:
visitTitlein classTSHBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-
visitDescription
Description copied from class:TSHBaseVisitorVisit a parse tree produced byTSHParser.description().The default implementation returns the result of calling
AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)onctx.- Specified by:
visitDescriptionin interfaceTSHVisitor<Object>- Overrides:
visitDescriptionin classTSHBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-
visitStatus
Description copied from class:TSHBaseVisitorVisit a parse tree produced byTSHParser.status().The default implementation returns the result of calling
AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)onctx.- Specified by:
visitStatusin interfaceTSHVisitor<Object>- Overrides:
visitStatusin classTSHBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-
visitUrl
Description copied from class:TSHBaseVisitorVisit a parse tree produced byTSHParser.url().The default implementation returns the result of calling
AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)onctx.- Specified by:
visitUrlin interfaceTSHVisitor<Object>- Overrides:
visitUrlin classTSHBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-
visitSetup
Description copied from class:TSHBaseVisitorVisit a parse tree produced byTSHParser.setup().The default implementation returns the result of calling
AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)onctx.- Specified by:
visitSetupin interfaceTSHVisitor<Object>- Overrides:
visitSetupin classTSHBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-
visitTeardown
Description copied from class:TSHBaseVisitorVisit a parse tree produced byTSHParser.teardown().The default implementation returns the result of calling
AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)onctx.- Specified by:
visitTeardownin interfaceTSHVisitor<Object>- Overrides:
visitTeardownin classTSHBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-
visitTest
Description copied from class:TSHBaseVisitorVisit a parse tree produced byTSHParser.test().The default implementation returns the result of calling
AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)onctx.- Specified by:
visitTestin interfaceTSHVisitor<Object>- Overrides:
visitTestin classTSHBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-
visitOperation
Description copied from class:TSHBaseVisitorVisit a parse tree produced byTSHParser.operation().The default implementation returns the result of calling
AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)onctx.- Specified by:
visitOperationin interfaceTSHVisitor<Object>- Overrides:
visitOperationin classTSHBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-
visitResponseCodeEquals
Description copied from class:TSHBaseVisitorVisit a parse tree produced by theResponseCodeEqualslabeled alternative inTSHParser.assertionType().The default implementation returns the result of calling
AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)onctx.- Specified by:
visitResponseCodeEqualsin interfaceTSHVisitor<Object>- Overrides:
visitResponseCodeEqualsin classTSHBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-
visitResponseCodeIn
Description copied from class:TSHBaseVisitorVisit a parse tree produced by theResponseCodeInlabeled alternative inTSHParser.assertionType().The default implementation returns the result of calling
AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)onctx.- Specified by:
visitResponseCodeInin interfaceTSHVisitor<Object>- Overrides:
visitResponseCodeInin classTSHBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-
visitResourceEquals
Description copied from class:TSHBaseVisitorVisit a parse tree produced by theResourceEqualslabeled alternative inTSHParser.assertionType().The default implementation returns the result of calling
AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)onctx.- Specified by:
visitResourceEqualsin interfaceTSHVisitor<Object>- Overrides:
visitResourceEqualsin classTSHBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-
visitExpressionAssertion
Description copied from class:TSHBaseVisitorVisit a parse tree produced by theExpressionAssertionlabeled alternative inTSHParser.assertionType().The default implementation returns the result of calling
AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)onctx.- Specified by:
visitExpressionAssertionin interfaceTSHVisitor<Object>- Overrides:
visitExpressionAssertionin classTSHBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-
visitVariable
Description copied from class:TSHBaseVisitorVisit a parse tree produced byTSHParser.variable().The default implementation returns the result of calling
AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)onctx.- Specified by:
visitVariablein interfaceTSHVisitor<Object>- Overrides:
visitVariablein classTSHBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-
visitFixture
Description copied from class:TSHBaseVisitorVisit a parse tree produced byTSHParser.fixture().The default implementation returns the result of calling
AbstractParseTreeVisitor.visitChildren(org.antlr.v4.runtime.tree.RuleNode)onctx.- Specified by:
visitFixturein interfaceTSHVisitor<Object>- Overrides:
visitFixturein classTSHBaseVisitor<Object>- Parameters:
ctx- the parse tree- Returns:
- the visitor result
-