type (PGresult)

    /*
     * call-seq:
     *    res.type( index )
     *
     * Returns the data type associated with the given column number.
     *
     * The integer returned is the internal +OID+ number (in PostgreSQL) of the type.
     * If you have the PostgreSQL source available, you can see the OIDs for every column type in the file <tt>src/include/catalog/pg_type.h</tt>.
     */
    static VALUE
    pgresult_type(obj, index)
        VALUE obj, index;
    {
        PGresult* result = get_pgresult(obj);
        int i = NUM2INT(index);
        if (i < 0 || i >= PQnfields(result)) {
            rb_raise(rb_eArgError, "invalid field number %d", i);
        }
        return INT2NUM(PQftype(result, i));
    }