code: func InferType(sc *variable.StatementContext, node ast.Node) error {
  	var inferrer typeInferrer
  	inferrer.sc = sc
  	// TODO: get the default charset from ctx
  	inferrer.defaultCharset = "utf8"
  	node.Accept(&inferrer)
  	return inferrer.err
  }
docs: // InferType infers result type for ast.ExprNode.