A bitmap ref is a variable that may temporarily reference another bitmap. These are useful for manipulating specific bitmaps within bitmap arrays or bitmap hashes. All bitmap operations except for init_bitmap(bitmap_name text, range_name text) may take the name of a bitmap ref instead of a bitmap.
Bitmap refs may not be shared, and the reference is only accessible within the transaction that created it. These restrictions exist to eliminate the possibility of references to deleted objects or to objects from other sessions.
The following functions comprise the Veil bitmaps API:
init_bitmap(bitmap_name text, range_name text)
clear_bitmap(bitmap_name text)
bitmap_setbit(bitmap_name text, bit_number int4)
bitmap_clearbit(bitmap_name text, bit_number int4)
bitmap_testbit(bitmap_name text, bit_number int4)
bitmap_union(result_name text, bm2_name text)
bitmap_intersect(result_name text, bm2_name text)
bitmap_bits(bitmap_name text)
bitmap_range(bitmap_name text)
function veil.init_bitmap(bitmap_name text, range_name text) returns bool
function veil.clear_bitmap(bitmap_name text) returns bool
function veil.bitmap_setbit(bitmap_name text, bit_number int4) returns bool
function veil.bitmap_clearbit(bitmap_name text, bit_number int4) returns bool
function veil.bitmap_testbit(bitmap_name text, bit_number int4) returns bool
function veil.bitmap_union(result_name text, bm2_name text) returns bool
function veil.bitmap_intersect(result_name text, bm2_name text) returns bool
function veil.bitmap_bits(bitmap_name text) returns setof int4
function veil.bitmap_range(bitmap_name text) returns veil.range_t
Next: Bitmap Arrays