public PropertyPathTraverser(SqlEmitter sqlEmitter) { this.sqlEmitter = sqlEmitter; joinTree = new JoinTree(this); joinTree.TableMap = sqlEmitter.RootClassMap.MustGetTableMap(); }
public virtual string ToScalarSql(string npath, Type type, ref IList outParameters, IList inParameters) { NPathParser parser = new NPathParser(); NPathSelectQuery query = parser.ParseSelectQuery(npath, inParameters); IClassMap rootClassMap = this.Context.DomainMap.MustGetClassMap(type); this.ResultParameters = new ArrayList(); SqlEmitter sqlEmitter = new SqlEmitter(this, query, NPathQueryType.SelectScalar, rootClassMap); string sql = sqlEmitter.EmitSql(); outParameters = sqlEmitter.ResultParameters; return(sql); }
private NPathQueryType GetNPathQueryType(NPathSelectQuery query) { return(SqlEmitter.DeduceQueryType(query)); }
public override string Emit(BonsaiExpression exp, Emitter top, Emitter next) => SqlEmitter.Emit(exp, top, next);