private Symbol ProcessAliasedQuerySource(VerificationContext context, HeD.Engine.Model.Node source) { var sourceAlias = source.GetAttribute<String>("alias"); var sourceExpression = source.Children[0] as ASTNode; if (sourceExpression == null) { throw new InvalidOperationException(String.Format("Could not determine source expression for alias '{0}'.", sourceAlias)); } Verifier.Verify(context, sourceExpression); return new Symbol(sourceAlias, sourceExpression.ResultType); }
public void Verify(VerificationContext context, HeD.Engine.Model.ASTNode node) { // TODO: Implement generic identifier resolution. In theory, this isn't necessary because the CQL-to-ELM translator should never spit out this type of node. throw new InvalidOperationException(String.Format("Could not resolve identifier {0}{1}.", node.GetAttribute<String>("libraryName") ?? "", node.GetAttribute<String>("name"))); }