code: func (tx *Tx) StmtxContext(ctx context.Context, stmt interface{}) *Stmt {
  	var s *sql.Stmt
  	switch v := stmt.(type) {
  	case Stmt:
  		s = v.Stmt
  	case *Stmt:
  		s = v.Stmt
  	case *sql.Stmt:
  		s = v
  	default:
  		panic(fmt.Sprintf("non-statement type %v passed to Stmtx", reflect.ValueOf(stmt).Type()))
  	}
  	return &Stmt{Stmt: tx.StmtContext(ctx, s), Mapper: tx.Mapper}
  }
docs: // StmtxContext returns a version of the prepared statement which runs within a
  // transaction. Provided stmt can be either *sql.Stmt or *sqlx.Stmt.