Struct pgx_pg_sys::PlannerInfo
source · [−]#[repr(C)]pub struct PlannerInfo {Show 71 fields
pub type_: NodeTag,
pub parse: *mut Query,
pub glob: *mut PlannerGlobal,
pub query_level: Index,
pub parent_root: *mut PlannerInfo,
pub plan_params: *mut List,
pub outer_params: *mut Bitmapset,
pub simple_rel_array: *mut *mut RelOptInfo,
pub simple_rel_array_size: c_int,
pub simple_rte_array: *mut *mut RangeTblEntry,
pub append_rel_array: *mut *mut AppendRelInfo,
pub all_baserels: Relids,
pub nullable_baserels: Relids,
pub join_rel_list: *mut List,
pub join_rel_hash: *mut HTAB,
pub join_rel_level: *mut *mut List,
pub join_cur_level: c_int,
pub init_plans: *mut List,
pub cte_plan_ids: *mut List,
pub multiexpr_params: *mut List,
pub eq_classes: *mut List,
pub ec_merging_done: bool,
pub canon_pathkeys: *mut List,
pub left_join_clauses: *mut List,
pub right_join_clauses: *mut List,
pub full_join_clauses: *mut List,
pub join_info_list: *mut List,
pub all_result_relids: Relids,
pub leaf_result_relids: Relids,
pub append_rel_list: *mut List,
pub row_identity_vars: *mut List,
pub rowMarks: *mut List,
pub placeholder_list: *mut List,
pub fkey_list: *mut List,
pub query_pathkeys: *mut List,
pub group_pathkeys: *mut List,
pub window_pathkeys: *mut List,
pub distinct_pathkeys: *mut List,
pub sort_pathkeys: *mut List,
pub part_schemes: *mut List,
pub initial_rels: *mut List,
pub upper_rels: [*mut List; 7],
pub upper_targets: [*mut PathTarget; 7],
pub processed_tlist: *mut List,
pub update_colnos: *mut List,
pub grouping_map: *mut AttrNumber,
pub minmax_aggs: *mut List,
pub planner_cxt: MemoryContext,
pub total_table_pages: f64,
pub tuple_fraction: f64,
pub limit_tuples: f64,
pub qual_security_level: Index,
pub hasJoinRTEs: bool,
pub hasLateralRTEs: bool,
pub hasHavingQual: bool,
pub hasPseudoConstantQuals: bool,
pub hasAlternativeSubPlans: bool,
pub hasRecursion: bool,
pub agginfos: *mut List,
pub aggtransinfos: *mut List,
pub numOrderedAggs: c_int,
pub hasNonPartialAggs: bool,
pub hasNonSerialAggs: bool,
pub wt_param_id: c_int,
pub non_recursive_path: *mut Path,
pub curOuterRels: Relids,
pub curOuterParams: *mut List,
pub isAltSubplan: *mut bool,
pub isUsedSubplan: *mut bool,
pub join_search_private: *mut c_void,
pub partColsUpdated: bool,
}
Fields
type_: NodeTag
parse: *mut Query
glob: *mut PlannerGlobal
query_level: Index
parent_root: *mut PlannerInfo
plan_params: *mut List
outer_params: *mut Bitmapset
simple_rel_array: *mut *mut RelOptInfo
simple_rel_array_size: c_int
simple_rte_array: *mut *mut RangeTblEntry
append_rel_array: *mut *mut AppendRelInfo
all_baserels: Relids
nullable_baserels: Relids
join_rel_list: *mut List
join_rel_hash: *mut HTAB
join_rel_level: *mut *mut List
join_cur_level: c_int
init_plans: *mut List
cte_plan_ids: *mut List
multiexpr_params: *mut List
eq_classes: *mut List
ec_merging_done: bool
canon_pathkeys: *mut List
left_join_clauses: *mut List
right_join_clauses: *mut List
full_join_clauses: *mut List
join_info_list: *mut List
all_result_relids: Relids
leaf_result_relids: Relids
append_rel_list: *mut List
row_identity_vars: *mut List
rowMarks: *mut List
placeholder_list: *mut List
fkey_list: *mut List
query_pathkeys: *mut List
group_pathkeys: *mut List
window_pathkeys: *mut List
distinct_pathkeys: *mut List
sort_pathkeys: *mut List
part_schemes: *mut List
initial_rels: *mut List
upper_rels: [*mut List; 7]
upper_targets: [*mut PathTarget; 7]
processed_tlist: *mut List
update_colnos: *mut List
grouping_map: *mut AttrNumber
minmax_aggs: *mut List
planner_cxt: MemoryContext
total_table_pages: f64
tuple_fraction: f64
limit_tuples: f64
qual_security_level: Index
hasJoinRTEs: bool
hasLateralRTEs: bool
hasHavingQual: bool
hasPseudoConstantQuals: bool
hasAlternativeSubPlans: bool
hasRecursion: bool
agginfos: *mut List
aggtransinfos: *mut List
numOrderedAggs: c_int
hasNonPartialAggs: bool
hasNonSerialAggs: bool
wt_param_id: c_int
non_recursive_path: *mut Path
curOuterRels: Relids
curOuterParams: *mut List
isAltSubplan: *mut bool
isUsedSubplan: *mut bool
join_search_private: *mut c_void
partColsUpdated: bool
Trait Implementations
sourceimpl Clone for PlannerInfo
impl Clone for PlannerInfo
sourcefn clone(&self) -> PlannerInfo
fn clone(&self) -> PlannerInfo
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for PlannerInfo
impl Debug for PlannerInfo
sourceimpl Default for PlannerInfo
impl Default for PlannerInfo
sourceimpl Display for PlannerInfo
impl Display for PlannerInfo
sourceimpl PgNode for PlannerInfo
impl PgNode for PlannerInfo
type NodeType = PlannerInfo
sourcefn as_node_ptr(&self) -> *mut Self::NodeType
fn as_node_ptr(&self) -> *mut Self::NodeType
Represent this node as a mutable pointer of its type
impl Copy for PlannerInfo
Auto Trait Implementations
impl RefUnwindSafe for PlannerInfo
impl !Send for PlannerInfo
impl !Sync for PlannerInfo
impl Unpin for PlannerInfo
impl UnwindSafe for PlannerInfo
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
🔬 This is a nightly-only experimental API. (
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more