pub struct Drawing {
    pub id: Uuid,
    pub shape_type: DrawingShapeType,
    pub add_date: Option<NaiveDate>,
    pub remove_date: Option<NaiveDate>,
    pub rotation: f32,
    pub scale_x: f32,
    pub scale_y: f32,
    pub x: i32,
    pub y: i32,
    pub properties: Value,
    pub layer_id: Uuid,
    pub notes: String,
}

Fields§

§id: Uuid§shape_type: DrawingShapeType§add_date: Option<NaiveDate>§remove_date: Option<NaiveDate>§rotation: f32§scale_x: f32§scale_y: f32§x: i32§y: i32§properties: Value§layer_id: Uuid§notes: String

Implementations§

source§

impl Drawing

source

pub async fn find( map_id: i32, conn: &mut AsyncPgConnection ) -> QueryResult<Vec<Self>>

Get all drawings assosicated with one map.

Errors
  • Unknown, diesel doesn’t say why it might error.
source

pub async fn find_in_layer( layer_id: Uuid, conn: &mut AsyncPgConnection ) -> QueryResult<Vec<Self>>

Get all drawings saved in one layer.

Errors
  • Unknown, diesel doesn’t say why it might error.
source

pub async fn create( drawings: Vec<Self>, conn: &mut AsyncPgConnection ) -> QueryResult<Vec<Self>>

Save new drawings into the database.

Errors
  • Unknown, diesel doesn’t say why it might error.
source

pub async fn update( drawing_updates: Vec<UpdateDrawing>, conn: &mut AsyncPgConnection ) -> QueryResult<Vec<Self>>

Replace existing drawings in the database.

Errors
  • Unknown, diesel doesn’t say why it might error.
source

fn do_update( updates: Vec<UpdateDrawing>, conn: &mut AsyncPgConnection ) -> Vec<impl Future<Output = QueryResult<Self>>>

Helper that performs the actual update of the drawings.

source

pub async fn delete_by_ids( ids: Vec<Uuid>, conn: &mut AsyncPgConnection ) -> QueryResult<usize>

Delete the drawings from the database.

Errors
  • Unknown, diesel doesn’t say why it might error.

Trait Implementations§

source§

impl Clone for Drawing

source§

fn clone(&self) -> Drawing

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 Drawing

source§

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

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

impl HasTable for Drawing

§

type Table = table

The table this type is associated with.
source§

fn table() -> Self::Table

Returns the table this type is associated with.
source§

impl<'ident> Identifiable for &'ident Drawing

§

type Id = &'ident Uuid

The type of this struct’s identifier. Read more
source§

fn id(self) -> Self::Id

Returns the identifier for this record. Read more
source§

impl<'insert> Insertable<table> for &'insert Drawing

§

type Values = <(Option<Grouped<Eq<id, <&'insert Uuid as AsExpression<<id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<shape_type, <&'insert DrawingShapeType as AsExpression<<shape_type as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<add_date, <&'insert NaiveDate as AsExpression<<add_date as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<remove_date, <&'insert NaiveDate as AsExpression<<remove_date as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<rotation, <&'insert f32 as AsExpression<<rotation as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<scale_x, <&'insert f32 as AsExpression<<scale_x as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<scale_y, <&'insert f32 as AsExpression<<scale_y as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<x, <&'insert i32 as AsExpression<<x as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<y, <&'insert i32 as AsExpression<<y as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<properties, <&'insert Value as AsExpression<<properties as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<layer_id, <&'insert Uuid as AsExpression<<layer_id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<notes, <&'insert String as AsExpression<<notes as Expression>::SqlType>>::Expression>>>) as Insertable<table>>::Values

The VALUES clause to insert these records Read more
source§

fn values( self ) -> <(Option<Eq<id, &'insert Uuid>>, Option<Eq<shape_type, &'insert DrawingShapeType>>, Option<Eq<add_date, &'insert NaiveDate>>, Option<Eq<remove_date, &'insert NaiveDate>>, Option<Eq<rotation, &'insert f32>>, Option<Eq<scale_x, &'insert f32>>, Option<Eq<scale_y, &'insert f32>>, Option<Eq<x, &'insert i32>>, Option<Eq<y, &'insert i32>>, Option<Eq<properties, &'insert Value>>, Option<Eq<layer_id, &'insert Uuid>>, Option<Eq<notes, &'insert String>>) as Insertable<table>>::Values

Construct Self::Values Read more
source§

fn insert_into( self, table: T ) -> InsertStatement<T, Self::Values, Insert, NoReturningClause>where T: Table, Self: Sized,

Insert self into a given table. Read more
source§

impl Insertable<table> for Drawing

§

type Values = <(Option<Grouped<Eq<id, <Uuid as AsExpression<<id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<shape_type, <DrawingShapeType as AsExpression<<shape_type as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<add_date, <NaiveDate as AsExpression<<add_date as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<remove_date, <NaiveDate as AsExpression<<remove_date as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<rotation, <f32 as AsExpression<<rotation as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<scale_x, <f32 as AsExpression<<scale_x as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<scale_y, <f32 as AsExpression<<scale_y as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<x, <i32 as AsExpression<<x as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<y, <i32 as AsExpression<<y as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<properties, <Value as AsExpression<<properties as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<layer_id, <Uuid as AsExpression<<layer_id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<notes, <String as AsExpression<<notes as Expression>::SqlType>>::Expression>>>) as Insertable<table>>::Values

The VALUES clause to insert these records Read more
source§

fn values( self ) -> <(Option<Eq<id, Uuid>>, Option<Eq<shape_type, DrawingShapeType>>, Option<Eq<add_date, NaiveDate>>, Option<Eq<remove_date, NaiveDate>>, Option<Eq<rotation, f32>>, Option<Eq<scale_x, f32>>, Option<Eq<scale_y, f32>>, Option<Eq<x, i32>>, Option<Eq<y, i32>>, Option<Eq<properties, Value>>, Option<Eq<layer_id, Uuid>>, Option<Eq<notes, String>>) as Insertable<table>>::Values

Construct Self::Values Read more
source§

fn insert_into( self, table: T ) -> InsertStatement<T, Self::Values, Insert, NoReturningClause>where T: Table, Self: Sized,

Insert self into a given table. Read more
source§

impl<__DB: Backend, __ST0, __ST1, __ST2, __ST3, __ST4, __ST5, __ST6, __ST7, __ST8, __ST9, __ST10, __ST11> Queryable<(__ST0, __ST1, __ST2, __ST3, __ST4, __ST5, __ST6, __ST7, __ST8, __ST9, __ST10, __ST11), __DB> for Drawingwhere (Uuid, DrawingShapeType, Option<NaiveDate>, Option<NaiveDate>, f32, f32, f32, i32, i32, Value, Uuid, String): FromStaticSqlRow<(__ST0, __ST1, __ST2, __ST3, __ST4, __ST5, __ST6, __ST7, __ST8, __ST9, __ST10, __ST11), __DB>,

§

type Row = (Uuid, DrawingShapeType, Option<NaiveDate>, Option<NaiveDate>, f32, f32, f32, i32, i32, Value, Uuid, String)

The Rust type you’d like to map from. Read more
source§

fn build(row: Self::Row) -> Result<Self>

Construct an instance of this type
source§

impl TryFrom<Drawing> for DrawingDto

§

type Error = ServiceError

The type returned in the event of a conversion error.
source§

fn try_from(drawing: Drawing) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl TryFrom<DrawingDto> for Drawing

§

type Error = ServiceError

The type returned in the event of a conversion error.
source§

fn try_from(drawing_dto: DrawingDto) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl UndecoratedInsertRecord<table> for Drawing

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,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

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

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> IntoSql for T

source§

fn into_sql<T>(self) -> Self::Expressionwhere Self: AsExpression<T> + Sized, T: SqlType + TypedExpressionType,

Convert self to an expression for Diesel’s query builder. Read more
source§

fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expressionwhere &'a Self: AsExpression<T>, T: SqlType + TypedExpressionType,

Convert &self to an expression for Diesel’s query builder. Read more
source§

impl<T> Paginate for T

source§

fn paginate(self, page: Option<i32>) -> PaginatedQuery<T>

Return a paginated version of a query for a specific page number.
source§

impl<T, Conn> RunQueryDsl<Conn> for T

source§

fn execute<'query, 'conn>( self, conn: &'conn mut Conn ) -> <Conn as AsyncConnection>::ExecuteFuture<'conn, 'query>where Conn: AsyncConnection + Send, Self: ExecuteDsl<Conn, <Conn as AsyncConnection>::Backend> + 'query,

Executes the given command, returning the number of rows affected. Read more
source§

fn load<'query, U, 'conn>( self, conn: &'conn mut Conn ) -> AndThen<Self::LoadFuture<'conn>, TryCollect<Self::Stream<'conn>, Vec<U, Global>>, fn(_: Self::Stream<'conn>) -> TryCollect<Self::Stream<'conn>, Vec<U, Global>>>where U: Send, Conn: AsyncConnection, Self: LoadQuery<'query, Conn, U> + 'query,

Executes the given query, returning a Vec with the returned rows. Read more
source§

fn load_stream<'conn, 'query, U>( self, conn: &'conn mut Conn ) -> Self::LoadFuture<'conn>where Conn: AsyncConnection, U: 'conn, Self: LoadQuery<'query, Conn, U> + 'query,

Executes the given query, returning a Stream with the returned rows. Read more
source§

fn get_result<'query, 'conn, U>( self, conn: &'conn mut Conn ) -> AndThen<Self::LoadFuture<'conn>, Map<StreamFuture<Pin<Box<Self::Stream<'conn>, Global>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<Self::Stream<'conn>, Global>>)) -> Result<U, Error>>, fn(_: Self::Stream<'conn>) -> Map<StreamFuture<Pin<Box<Self::Stream<'conn>, Global>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<Self::Stream<'conn>, Global>>)) -> Result<U, Error>>>where U: Send + 'conn, Conn: AsyncConnection, Self: LoadQuery<'query, Conn, U> + 'query,

Runs the command, and returns the affected row. Read more
source§

fn get_results<'query, U, 'conn>( self, conn: &'conn mut Conn ) -> AndThen<Self::LoadFuture<'conn>, TryCollect<Self::Stream<'conn>, Vec<U, Global>>, fn(_: Self::Stream<'conn>) -> TryCollect<Self::Stream<'conn>, Vec<U, Global>>>where U: Send, Conn: AsyncConnection, Self: LoadQuery<'query, Conn, U> + 'query,

Runs the command, returning an Vec with the affected rows. Read more
source§

fn first<'query, 'conn, U>( self, conn: &'conn mut Conn ) -> AndThen<<Self::Output as LoadQuery<'query, Conn, U>>::LoadFuture<'conn>, Map<StreamFuture<Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>, Global>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>, Global>>)) -> Result<U, Error>>, fn(_: <Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>) -> Map<StreamFuture<Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>, Global>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>, Global>>)) -> Result<U, Error>>>where U: Send + 'conn, Conn: AsyncConnection, Self: LimitDsl, Self::Output: LoadQuery<'query, Conn, U> + Send + 'query,

Attempts to load a single record. Read more
source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T, ST, DB> StaticallySizedRow<ST, DB> for Twhere ST: SqlTypeOrSelectable + TupleSize, T: Queryable<ST, DB>, DB: Backend,

source§

const FIELD_COUNT: usize = <ST as crate::util::TupleSize>::SIZE

The number of fields that this type will consume.
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, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
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.
source§

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

Performs the conversion.
source§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more