pub struct PlanHint {
pub hint: String,
}Expand description
Optimization hint that carries a planner directive as a string.
Attach this to any standard relation via register_optimization to convey
planner choices without changing relation semantics.
§Text Format
=== Plan
Root[result]
Read[data => col:i64]
+ Opt:PlanHint[hint='use_index']Fields§
§hint: StringPlanner directive. The text format stores this as hint='...'.
Trait Implementations§
Source§impl Explainable for PlanHint
impl Explainable for PlanHint
Source§fn name() -> &'static str
fn name() -> &'static str
Canonical textual name for this extension. This is what appears in
Substrait text plans and how the registry identifies the type.
Source§fn from_args(args: &ExtensionArgs) -> Result<Self, ExtensionError>
fn from_args(args: &ExtensionArgs) -> Result<Self, ExtensionError>
Parse extension arguments into this type
Source§fn to_args(&self) -> Result<ExtensionArgs, ExtensionError>
fn to_args(&self) -> Result<ExtensionArgs, ExtensionError>
Convert this type to extension arguments
Source§impl Message for PlanHint
impl Message for PlanHint
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message to a buffer. Read more
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message to a newly allocated buffer.
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message with a length-delimiter to a buffer. Read more
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message with a length-delimiter to a newly allocated buffer.
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes an instance of the message from a buffer. Read more
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes a length-delimited instance of the message from the buffer.
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes an instance of the message from a buffer, and merges it into
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes a length-delimited instance of the message from buffer, and
merges it into
self.Source§impl Name for PlanHint
impl Name for PlanHint
Source§const PACKAGE: &'static str = "example"
const PACKAGE: &'static str = "example"
Package name this message type is contained in. They are domain-like
and delimited by
., e.g. google.protobuf.Source§const NAME: &'static str = "PlanHint"
const NAME: &'static str = "PlanHint"
Simple name for this
Message.
This name is the same as it appears in the source .proto file, e.g. FooBar.Source§fn full_name() -> String
fn full_name() -> String
Fully-qualified unique name for this
Message.
It’s prefixed with the package name and names of any parent messages,
e.g. google.rpc.BadRequest.FieldViolation.
By default, this is the package name followed by the message name.
Fully-qualified names must be unique within a domain of Type URLs.impl StructuralPartialEq for PlanHint
Auto Trait Implementations§
impl Freeze for PlanHint
impl RefUnwindSafe for PlanHint
impl Send for PlanHint
impl Sync for PlanHint
impl Unpin for PlanHint
impl UnsafeUnpin for PlanHint
impl UnwindSafe for PlanHint
Blanket Implementations§
Source§impl<T> AnyConvertible for T
impl<T> AnyConvertible for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more