Enable dependencies in the metadata for BAD entities
Allow Channels and Procedures to store dependencies on
Datasets and Functions
Prevent dropping of these dependencies
Add Error tests
Change-Id: Ic6ac2daad03844a042aded8e17bb231a06f59cbe
diff --git a/asterix-bad/src/main/resources/lang-extension/lang.txt b/asterix-bad/src/main/resources/lang-extension/lang.txt
index 7c5931c..02aba78 100644
--- a/asterix-bad/src/main/resources/lang-extension/lang.txt
+++ b/asterix-bad/src/main/resources/lang-extension/lang.txt
@@ -129,9 +129,14 @@
Token endPos;
Statement functionBodyExpr;
Expression period = null;
+ String currentDataverse = defaultDataverse;
+ createNewScope();
}
{
"procedure" fctName = FunctionName()
+ {
+ defaultDataverse = fctName.dataverse;
+ }
paramList = ParameterList()
<LEFTBRACE>
{
@@ -149,6 +154,7 @@
functionBody = extractFragment(beginPos.beginLine, beginPos.beginColumn, endPos.beginLine, endPos.beginColumn);
signature = new FunctionSignature(fctName.dataverse, fctName.function, paramList.size());
removeCurrentScope();
+ defaultDataverse = currentDataverse;
}
("period" period = FunctionCallExpr())?
{