/// <summary> /// The main driver to parse the query model. We will cache the result into a function /// if it is something we know how to cache. /// </summary> /// <param name="queryModel"></param> public override void VisitQueryModel(QueryModel queryModel) { Debug.WriteLine("VisitQueryModel: {0}{1}", queryModel.ToString(), ""); Debug.Indent(); // If this is a QM function we are referencing, then process it as such. var qmSource = _codeEnv.FindQMFunction(queryModel); if (qmSource == null) { VisitQueryModelNoCache(queryModel); } else { VisitQueryModelCache(queryModel, qmSource); } Debug.Unindent(); }