Skip to main content

Expression

Trait Expression 

Source
pub trait Expression: OpPrecedence {
    // Required method
    fn write_query(
        &self,
        writer: &dyn SqlWriter,
        context: &mut Context,
        out: &mut DynQuery,
    );

    // Provided methods
    fn accept_visitor(
        &self,
        _matcher: &mut dyn ExpressionVisitor,
        _writer: &dyn SqlWriter,
        _context: &mut Context,
        _out: &mut DynQuery,
    ) -> bool { ... }
    fn as_identifier(&self, context: &mut Context) -> String { ... }
}
Expand description

Renderable SQL expression.

Required Methods§

Source

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Generates the SQL representation of this expression.

Provided Methods§

Source

fn accept_visitor( &self, _matcher: &mut dyn ExpressionVisitor, _writer: &dyn SqlWriter, _context: &mut Context, _out: &mut DynQuery, ) -> bool

Traverses the expression with a visitor.

Returns true if the visitor matched this node.

Source

fn as_identifier(&self, context: &mut Context) -> String

Renders the expression as a string suitable for use as an identifier.

Trait Implementations§

Source§

impl Expression for &dyn Expression

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Generates the SQL representation of this expression.
Source§

fn accept_visitor( &self, matcher: &mut dyn ExpressionVisitor, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, ) -> bool

Traverses the expression with a visitor. Read more
Source§

fn as_identifier(&self, context: &mut Context) -> String

Renders the expression as a string suitable for use as an identifier.
Source§

impl<'a, T: Expression> From<&'a T> for &'a dyn Expression

Source§

fn from(value: &'a T) -> Self

Converts to this type from the input type.
Source§

impl OpPrecedence for &dyn Expression

Source§

fn precedence(&self, writer: &dyn SqlWriter) -> i32

Lower numbers bind weaker, writers parenthesize when child precedence <= operator precedence.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl Expression for &'static str

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

fn accept_visitor( &self, matcher: &mut dyn ExpressionVisitor, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, ) -> bool

Source§

impl Expression for ()

Source§

fn write_query( &self, _writer: &dyn SqlWriter, _context: &mut Context, _out: &mut DynQuery, )

Source§

impl Expression for Box<[u8]>

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for Cow<'static, str>

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for Date

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for Decimal

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for Duration

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for Duration

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for OffsetDateTime

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for PrimitiveDateTime

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for String

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for Time

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for UtcDateTime

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for Uuid

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for Value

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for bool

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

fn accept_visitor( &self, matcher: &mut dyn ExpressionVisitor, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, ) -> bool

Source§

impl Expression for char

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for f32

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for f64

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for i8

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for i16

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for i32

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for i64

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for i128

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for isize

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for u8

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for u16

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for u32

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for u64

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for u128

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl Expression for usize

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl<T: AsValue + Expression> Expression for Option<T>

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

impl<T: Expression> Expression for &T

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

fn accept_visitor( &self, matcher: &mut dyn ExpressionVisitor, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, ) -> bool

Source§

fn as_identifier(&self, context: &mut Context) -> String

Source§

impl<T: Expression> Expression for Arc<T>

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

fn accept_visitor( &self, matcher: &mut dyn ExpressionVisitor, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, ) -> bool

Source§

impl<T: Expression> Expression for Box<T>

Source§

fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )

Source§

fn accept_visitor( &self, matcher: &mut dyn ExpressionVisitor, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, ) -> bool

Implementors§