pub enum ExprForm {
Identifier(Identifier),
GetAttribute(Box<ExprGetAttribute>),
GetSubscript(Box<ExprGetSubscript>),
Call(Box<ExprCall>),
LiteralValue(ExprLiteral),
TypedIdentifier(TypedIdentifier),
}Expand description
Each expression has a form, which is one of the following.
These forms are deliberately purely syntactic - additional semantic information, like types, are dependent on the feature graph, which may therefore be out-of-date when decoding an expression message.
Consumers must always perform additional parsing and validation, so semantic information should not be stored in the proto message itself.
Variants§
Identifier(Identifier)
GetAttribute(Box<ExprGetAttribute>)
GetSubscript(Box<ExprGetSubscript>)
Call(Box<ExprCall>)
LiteralValue(ExprLiteral)
TypedIdentifier(TypedIdentifier)
Implementations§
Source§impl ExprForm
impl ExprForm
Sourcepub fn merge(
field: &mut Option<ExprForm>,
tag: u32,
wire_type: WireType,
buf: &mut impl Buf,
ctx: DecodeContext,
) -> Result<(), DecodeError>
pub fn merge( field: &mut Option<ExprForm>, tag: u32, wire_type: WireType, buf: &mut impl Buf, ctx: DecodeContext, ) -> Result<(), DecodeError>
Decodes an instance of the message from a buffer, and merges it into self.
Sourcepub fn encoded_len(&self) -> usize
pub fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
Trait Implementations§
impl StructuralPartialEq for ExprForm
Auto Trait Implementations§
impl Freeze for ExprForm
impl RefUnwindSafe for ExprForm
impl Send for ExprForm
impl Sync for ExprForm
impl Unpin for ExprForm
impl UnsafeUnpin for ExprForm
impl UnwindSafe for ExprForm
Blanket Implementations§
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request