#[repr(C)]
pub struct TableAmRoutine {
Show 46 fields pub type_: NodeTag, pub slot_callbacks: Option<unsafe extern "C" fn(rel: Relation) -> *const TupleTableSlotOps>, pub scan_begin: Option<unsafe extern "C" fn(rel: Relation, snapshot: Snapshot, nkeys: c_int, key: *mut ScanKeyData, pscan: ParallelTableScanDesc, flags: uint32) -> TableScanDesc>, pub scan_end: Option<unsafe extern "C" fn(scan: TableScanDesc)>, pub scan_rescan: Option<unsafe extern "C" fn(scan: TableScanDesc, key: *mut ScanKeyData, set_params: bool, allow_strat: bool, allow_sync: bool, allow_pagemode: bool)>, pub scan_getnextslot: Option<unsafe extern "C" fn(scan: TableScanDesc, direction: ScanDirection, slot: *mut TupleTableSlot) -> bool>, pub scan_set_tidrange: Option<unsafe extern "C" fn(scan: TableScanDesc, mintid: ItemPointer, maxtid: ItemPointer)>, pub scan_getnextslot_tidrange: Option<unsafe extern "C" fn(scan: TableScanDesc, direction: ScanDirection, slot: *mut TupleTableSlot) -> bool>, pub parallelscan_estimate: Option<unsafe extern "C" fn(rel: Relation) -> Size>, pub parallelscan_initialize: Option<unsafe extern "C" fn(rel: Relation, pscan: ParallelTableScanDesc) -> Size>, pub parallelscan_reinitialize: Option<unsafe extern "C" fn(rel: Relation, pscan: ParallelTableScanDesc)>, pub index_fetch_begin: Option<unsafe extern "C" fn(rel: Relation) -> *mut IndexFetchTableData>, pub index_fetch_reset: Option<unsafe extern "C" fn(data: *mut IndexFetchTableData)>, pub index_fetch_end: Option<unsafe extern "C" fn(data: *mut IndexFetchTableData)>, pub index_fetch_tuple: Option<unsafe extern "C" fn(scan: *mut IndexFetchTableData, tid: ItemPointer, snapshot: Snapshot, slot: *mut TupleTableSlot, call_again: *mut bool, all_dead: *mut bool) -> bool>, pub tuple_fetch_row_version: Option<unsafe extern "C" fn(rel: Relation, tid: ItemPointer, snapshot: Snapshot, slot: *mut TupleTableSlot) -> bool>, pub tuple_tid_valid: Option<unsafe extern "C" fn(scan: TableScanDesc, tid: ItemPointer) -> bool>, pub tuple_get_latest_tid: Option<unsafe extern "C" fn(scan: TableScanDesc, tid: ItemPointer)>, pub tuple_satisfies_snapshot: Option<unsafe extern "C" fn(rel: Relation, slot: *mut TupleTableSlot, snapshot: Snapshot) -> bool>, pub index_delete_tuples: Option<unsafe extern "C" fn(rel: Relation, delstate: *mut TM_IndexDeleteOp) -> TransactionId>, pub tuple_insert: Option<unsafe extern "C" fn(rel: Relation, slot: *mut TupleTableSlot, cid: CommandId, options: c_int, bistate: *mut BulkInsertStateData)>, pub tuple_insert_speculative: Option<unsafe extern "C" fn(rel: Relation, slot: *mut TupleTableSlot, cid: CommandId, options: c_int, bistate: *mut BulkInsertStateData, specToken: uint32)>, pub tuple_complete_speculative: Option<unsafe extern "C" fn(rel: Relation, slot: *mut TupleTableSlot, specToken: uint32, succeeded: bool)>, pub multi_insert: Option<unsafe extern "C" fn(rel: Relation, slots: *mut *mut TupleTableSlot, nslots: c_int, cid: CommandId, options: c_int, bistate: *mut BulkInsertStateData)>, pub tuple_delete: Option<unsafe extern "C" fn(rel: Relation, tid: ItemPointer, cid: CommandId, snapshot: Snapshot, crosscheck: Snapshot, wait: bool, tmfd: *mut TM_FailureData, changingPart: bool) -> TM_Result>, pub tuple_update: Option<unsafe extern "C" fn(rel: Relation, otid: ItemPointer, slot: *mut TupleTableSlot, cid: CommandId, snapshot: Snapshot, crosscheck: Snapshot, wait: bool, tmfd: *mut TM_FailureData, lockmode: *mut LockTupleMode, update_indexes: *mut bool) -> TM_Result>, pub tuple_lock: Option<unsafe extern "C" fn(rel: Relation, tid: ItemPointer, snapshot: Snapshot, slot: *mut TupleTableSlot, cid: CommandId, mode: LockTupleMode, wait_policy: LockWaitPolicy, flags: uint8, tmfd: *mut TM_FailureData) -> TM_Result>, pub finish_bulk_insert: Option<unsafe extern "C" fn(rel: Relation, options: c_int)>, pub relation_set_new_filenode: Option<unsafe extern "C" fn(rel: Relation, newrnode: *const RelFileNode, persistence: c_char, freezeXid: *mut TransactionId, minmulti: *mut MultiXactId)>, pub relation_nontransactional_truncate: Option<unsafe extern "C" fn(rel: Relation)>, pub relation_copy_data: Option<unsafe extern "C" fn(rel: Relation, newrnode: *const RelFileNode)>, pub relation_copy_for_cluster: Option<unsafe extern "C" fn(NewTable: Relation, OldTable: Relation, OldIndex: Relation, use_sort: bool, OldestXmin: TransactionId, xid_cutoff: *mut TransactionId, multi_cutoff: *mut MultiXactId, num_tuples: *mut f64, tups_vacuumed: *mut f64, tups_recently_dead: *mut f64)>, pub relation_vacuum: Option<unsafe extern "C" fn(rel: Relation, params: *mut VacuumParams, bstrategy: BufferAccessStrategy)>, pub scan_analyze_next_block: Option<unsafe extern "C" fn(scan: TableScanDesc, blockno: BlockNumber, bstrategy: BufferAccessStrategy) -> bool>, pub scan_analyze_next_tuple: Option<unsafe extern "C" fn(scan: TableScanDesc, OldestXmin: TransactionId, liverows: *mut f64, deadrows: *mut f64, slot: *mut TupleTableSlot) -> bool>, pub index_build_range_scan: Option<unsafe extern "C" fn(table_rel: Relation, index_rel: Relation, index_info: *mut IndexInfo, allow_sync: bool, anyvisible: bool, progress: bool, start_blockno: BlockNumber, numblocks: BlockNumber, callback: IndexBuildCallback, callback_state: *mut c_void, scan: TableScanDesc) -> f64>, pub index_validate_scan: Option<unsafe extern "C" fn(table_rel: Relation, index_rel: Relation, index_info: *mut IndexInfo, snapshot: Snapshot, state: *mut ValidateIndexState)>, pub relation_size: Option<unsafe extern "C" fn(rel: Relation, forkNumber: ForkNumber) -> uint64>, pub relation_needs_toast_table: Option<unsafe extern "C" fn(rel: Relation) -> bool>, pub relation_toast_am: Option<unsafe extern "C" fn(rel: Relation) -> Oid>, pub relation_fetch_toast_slice: Option<unsafe extern "C" fn(toastrel: Relation, valueid: Oid, attrsize: int32, sliceoffset: int32, slicelength: int32, result: *mut varlena)>, pub relation_estimate_size: Option<unsafe extern "C" fn(rel: Relation, attr_widths: *mut int32, pages: *mut BlockNumber, tuples: *mut f64, allvisfrac: *mut f64)>, pub scan_bitmap_next_block: Option<unsafe extern "C" fn(scan: TableScanDesc, tbmres: *mut TBMIterateResult) -> bool>, pub scan_bitmap_next_tuple: Option<unsafe extern "C" fn(scan: TableScanDesc, tbmres: *mut TBMIterateResult, slot: *mut TupleTableSlot) -> bool>, pub scan_sample_next_block: Option<unsafe extern "C" fn(scan: TableScanDesc, scanstate: *mut SampleScanState) -> bool>, pub scan_sample_next_tuple: Option<unsafe extern "C" fn(scan: TableScanDesc, scanstate: *mut SampleScanState, slot: *mut TupleTableSlot) -> bool>,
}

Fields§

§type_: NodeTag§slot_callbacks: Option<unsafe extern "C" fn(rel: Relation) -> *const TupleTableSlotOps>§scan_begin: Option<unsafe extern "C" fn(rel: Relation, snapshot: Snapshot, nkeys: c_int, key: *mut ScanKeyData, pscan: ParallelTableScanDesc, flags: uint32) -> TableScanDesc>§scan_end: Option<unsafe extern "C" fn(scan: TableScanDesc)>§scan_rescan: Option<unsafe extern "C" fn(scan: TableScanDesc, key: *mut ScanKeyData, set_params: bool, allow_strat: bool, allow_sync: bool, allow_pagemode: bool)>§scan_getnextslot: Option<unsafe extern "C" fn(scan: TableScanDesc, direction: ScanDirection, slot: *mut TupleTableSlot) -> bool>§scan_set_tidrange: Option<unsafe extern "C" fn(scan: TableScanDesc, mintid: ItemPointer, maxtid: ItemPointer)>§scan_getnextslot_tidrange: Option<unsafe extern "C" fn(scan: TableScanDesc, direction: ScanDirection, slot: *mut TupleTableSlot) -> bool>§parallelscan_estimate: Option<unsafe extern "C" fn(rel: Relation) -> Size>§parallelscan_initialize: Option<unsafe extern "C" fn(rel: Relation, pscan: ParallelTableScanDesc) -> Size>§parallelscan_reinitialize: Option<unsafe extern "C" fn(rel: Relation, pscan: ParallelTableScanDesc)>§index_fetch_begin: Option<unsafe extern "C" fn(rel: Relation) -> *mut IndexFetchTableData>§index_fetch_reset: Option<unsafe extern "C" fn(data: *mut IndexFetchTableData)>§index_fetch_end: Option<unsafe extern "C" fn(data: *mut IndexFetchTableData)>§index_fetch_tuple: Option<unsafe extern "C" fn(scan: *mut IndexFetchTableData, tid: ItemPointer, snapshot: Snapshot, slot: *mut TupleTableSlot, call_again: *mut bool, all_dead: *mut bool) -> bool>§tuple_fetch_row_version: Option<unsafe extern "C" fn(rel: Relation, tid: ItemPointer, snapshot: Snapshot, slot: *mut TupleTableSlot) -> bool>§tuple_tid_valid: Option<unsafe extern "C" fn(scan: TableScanDesc, tid: ItemPointer) -> bool>§tuple_get_latest_tid: Option<unsafe extern "C" fn(scan: TableScanDesc, tid: ItemPointer)>§tuple_satisfies_snapshot: Option<unsafe extern "C" fn(rel: Relation, slot: *mut TupleTableSlot, snapshot: Snapshot) -> bool>§index_delete_tuples: Option<unsafe extern "C" fn(rel: Relation, delstate: *mut TM_IndexDeleteOp) -> TransactionId>§tuple_insert: Option<unsafe extern "C" fn(rel: Relation, slot: *mut TupleTableSlot, cid: CommandId, options: c_int, bistate: *mut BulkInsertStateData)>§tuple_insert_speculative: Option<unsafe extern "C" fn(rel: Relation, slot: *mut TupleTableSlot, cid: CommandId, options: c_int, bistate: *mut BulkInsertStateData, specToken: uint32)>§tuple_complete_speculative: Option<unsafe extern "C" fn(rel: Relation, slot: *mut TupleTableSlot, specToken: uint32, succeeded: bool)>§multi_insert: Option<unsafe extern "C" fn(rel: Relation, slots: *mut *mut TupleTableSlot, nslots: c_int, cid: CommandId, options: c_int, bistate: *mut BulkInsertStateData)>§tuple_delete: Option<unsafe extern "C" fn(rel: Relation, tid: ItemPointer, cid: CommandId, snapshot: Snapshot, crosscheck: Snapshot, wait: bool, tmfd: *mut TM_FailureData, changingPart: bool) -> TM_Result>§tuple_update: Option<unsafe extern "C" fn(rel: Relation, otid: ItemPointer, slot: *mut TupleTableSlot, cid: CommandId, snapshot: Snapshot, crosscheck: Snapshot, wait: bool, tmfd: *mut TM_FailureData, lockmode: *mut LockTupleMode, update_indexes: *mut bool) -> TM_Result>§tuple_lock: Option<unsafe extern "C" fn(rel: Relation, tid: ItemPointer, snapshot: Snapshot, slot: *mut TupleTableSlot, cid: CommandId, mode: LockTupleMode, wait_policy: LockWaitPolicy, flags: uint8, tmfd: *mut TM_FailureData) -> TM_Result>§finish_bulk_insert: Option<unsafe extern "C" fn(rel: Relation, options: c_int)>§relation_set_new_filenode: Option<unsafe extern "C" fn(rel: Relation, newrnode: *const RelFileNode, persistence: c_char, freezeXid: *mut TransactionId, minmulti: *mut MultiXactId)>§relation_nontransactional_truncate: Option<unsafe extern "C" fn(rel: Relation)>§relation_copy_data: Option<unsafe extern "C" fn(rel: Relation, newrnode: *const RelFileNode)>§relation_copy_for_cluster: Option<unsafe extern "C" fn(NewTable: Relation, OldTable: Relation, OldIndex: Relation, use_sort: bool, OldestXmin: TransactionId, xid_cutoff: *mut TransactionId, multi_cutoff: *mut MultiXactId, num_tuples: *mut f64, tups_vacuumed: *mut f64, tups_recently_dead: *mut f64)>§relation_vacuum: Option<unsafe extern "C" fn(rel: Relation, params: *mut VacuumParams, bstrategy: BufferAccessStrategy)>§scan_analyze_next_block: Option<unsafe extern "C" fn(scan: TableScanDesc, blockno: BlockNumber, bstrategy: BufferAccessStrategy) -> bool>§scan_analyze_next_tuple: Option<unsafe extern "C" fn(scan: TableScanDesc, OldestXmin: TransactionId, liverows: *mut f64, deadrows: *mut f64, slot: *mut TupleTableSlot) -> bool>§index_build_range_scan: Option<unsafe extern "C" fn(table_rel: Relation, index_rel: Relation, index_info: *mut IndexInfo, allow_sync: bool, anyvisible: bool, progress: bool, start_blockno: BlockNumber, numblocks: BlockNumber, callback: IndexBuildCallback, callback_state: *mut c_void, scan: TableScanDesc) -> f64>§index_validate_scan: Option<unsafe extern "C" fn(table_rel: Relation, index_rel: Relation, index_info: *mut IndexInfo, snapshot: Snapshot, state: *mut ValidateIndexState)>§relation_size: Option<unsafe extern "C" fn(rel: Relation, forkNumber: ForkNumber) -> uint64>§relation_needs_toast_table: Option<unsafe extern "C" fn(rel: Relation) -> bool>§relation_toast_am: Option<unsafe extern "C" fn(rel: Relation) -> Oid>§relation_fetch_toast_slice: Option<unsafe extern "C" fn(toastrel: Relation, valueid: Oid, attrsize: int32, sliceoffset: int32, slicelength: int32, result: *mut varlena)>§relation_estimate_size: Option<unsafe extern "C" fn(rel: Relation, attr_widths: *mut int32, pages: *mut BlockNumber, tuples: *mut f64, allvisfrac: *mut f64)>§scan_bitmap_next_block: Option<unsafe extern "C" fn(scan: TableScanDesc, tbmres: *mut TBMIterateResult) -> bool>§scan_bitmap_next_tuple: Option<unsafe extern "C" fn(scan: TableScanDesc, tbmres: *mut TBMIterateResult, slot: *mut TupleTableSlot) -> bool>§scan_sample_next_block: Option<unsafe extern "C" fn(scan: TableScanDesc, scanstate: *mut SampleScanState) -> bool>§scan_sample_next_tuple: Option<unsafe extern "C" fn(scan: TableScanDesc, scanstate: *mut SampleScanState, slot: *mut TupleTableSlot) -> bool>

Trait Implementations§

source§

impl Clone for TableAmRoutine

source§

fn clone(&self) -> TableAmRoutine

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for TableAmRoutine

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for TableAmRoutine

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl Display for TableAmRoutine

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PgNode for TableAmRoutine

source§

fn display_node(&self) -> String

Format this node Read more
source§

impl Copy for TableAmRoutine

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

const: unstable · source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for Twhere T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.