/* * call-seq: * conn.on_notice {|message| ... } * * Notice and warning messages generated by the server are not returned * by the query execution functions, since they do not imply failure of * the query. Instead they are passed to a notice handling function, and * execution continues normally after the handler returns. The default * notice handling function prints the message on <tt>stderr</tt>, but the * application can override this behavior by supplying its own handling * function. */ static VALUE pgconn_on_notice(self) VALUE self; { VALUE block = rb_block_proc(); PGconn *conn = get_pgconn(self); if (PQsetNoticeProcessor(conn, NULL, NULL) != notice_proxy) { PQsetNoticeProcessor(conn, notice_proxy, (void *) self); } rb_iv_set(self, "@on_notice", block); return self; }