func walkStmt(v Visitor, stmt Statement) (newStmt Statement, changed bool) {
	walkable, ok := stmt.(walkableStmt)
	if !ok {
		return stmt, false
	}
	newStmt = walkable.walkStmt(v)
	return newStmt, (stmt != newStmt)
}
// walkStmt walks the entire parsed stmt calling WalkExpr on each
// expression, and replacing each expression with the one returned
// by WalkExpr.
//
// NOTE: Beware that walkStmt does not necessarily traverse all parts of a
// statement by itself. For example, it will not walk into Subquery nodes
// within a FROM clause or into a JoinCond. Walk's logic is pretty
// interdependent with the logic for constructing a query plan.
walkStmt walks the entire parsed stmt calling WalkExpr on each
expression, and replacing each expression with the one returned
by WalkExpr.

Beware that walkStmt does not necessarily traverse all parts of a
statement by itself. For example, it will not walk into Subquery nodes
within a FROM clause or into a JoinCond. Walk's logic is pretty
interdependent with the logic for constructing a query plan.
// walkStmt walks the entire parsed stmt calling WalkExpr on each // expression and replacing each expression with the one returned // by WalkExpr . // // NOTE : Beware that walkStmt does not necessarily traverse all parts of a // statement by itself . For example it will not walk into Subquery nodes // within a FROM clause or into a JoinCond . Walk ' s logic is pretty // interdependent with the logic for constructing a query plan .
func walkStmt(v Visitor, stmt Statement) (newStmt Statement, changed bool) {
	walkable, ok := stmt.(walkableStmt)
	if !ok {
		return stmt, false
	}
	newStmt = walkable.walkStmt(v)
	return newStmt, (stmt != newStmt)
}
func walkStmt ( v Visitor , stmt Statement ) ( newStmt Statement , changed bool ) { walkable , ok := stmt . ( walkableStmt ) if ! ok { return stmt , false } newStmt = walkable . walkStmt ( v ) return newStmt , ( stmt != newStmt ) }
walkStmt walks the entire parsed stmt calling WalkExpr on each
expression, and replacing each expression with the one returned
by WalkExpr.
walkStmt walks the entire parsed stmt calling WalkExpr on each expression and replacing each expression with the one returned by WalkExpr .