pub struct PgLTree;
Available on crate feature backend-postgres only.
Expand description

PostgreSQL ltree extension type.

ltree stores a raber path which in this struct is represented as the tuple’s first value.

PostcreSQL Reference

The following set of SQL statements can be used to create a table with a ltree column. Here the ltree column is called path.

The path column is then populated to generate the tree.

ⓘ
CREATE TABLE test (path ltree);
INSERT INTO test VALUES ('Top');
INSERT INTO test VALUES ('Top.Science');
INSERT INTO test VALUES ('Top.Science.Astronomy');
INSERT INTO test VALUES ('Top.Science.Astronomy.Astrophysics');
INSERT INTO test VALUES ('Top.Science.Astronomy.Cosmology');
INSERT INTO test VALUES ('Top.Hobbies');
INSERT INTO test VALUES ('Top.Hobbies.Amateurs_Astronomy');
INSERT INTO test VALUES ('Top.Collections');
INSERT INTO test VALUES ('Top.Collections.Pictures');
INSERT INTO test VALUES ('Top.Collections.Pictures.Astronomy');
INSERT INTO test VALUES ('Top.Collections.Pictures.Astronomy.Stars');
INSERT INTO test VALUES ('Top.Collections.Pictures.Astronomy.Galaxies');
INSERT INTO test VALUES ('Top.Collections.Pictures.Astronomy.Astronauts');
CREATE INDEX path_gist_idx ON test USING GIST (path);
CREATE INDEX path_idx ON test USING BTREE (path);

The set of queries above will generate the following tree:

ⓘ
                       Top
                    /   |  \
             Science Hobbies Collections
               /       |              \
      Astronomy   Amateurs_Astronomy Pictures
           /  \                            |
Astrophysics  Cosmology                Astronomy
                                      /    |    \
                               Galaxies  Stars  Astronauts

Source

Trait Implementations§

source§

impl Clone for PgLTree

source§

fn clone(&self) -> PgLTree

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 PgLTree

source§

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

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

impl From<PgLTree> for String

source§

fn from(l: PgLTree) -> Self

Converts to this type from the input type.
source§

impl Iden for PgLTree

source§

fn unquoted(&self, s: &mut dyn Write)

source§

fn prepare(&self, s: &mut dyn Write, q: Quote)

source§

fn quoted(&self, q: Quote) -> String

source§

fn to_string(&self) -> String

source§

impl PartialEq for PgLTree

source§

fn eq(&self, other: &PgLTree) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Eq for PgLTree

source§

impl StructuralEq for PgLTree

source§

impl StructuralPartialEq for PgLTree

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where 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<I> IdenList for I
where I: IntoIden,

source§

impl<T, U> Into<U> for T
where 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> IntoColumnRef for T
where T: 'static + IntoIden,

source§

impl<T> IntoIden for T
where T: 'static + Iden,

source§

fn into_iden(self) -> SeaRc<dyn Iden>

source§

impl<I> IntoIndexColumn for I
where I: IntoIden,

source§

impl<T> IntoLikeExpr for T
where T: Into<String>,

source§

impl<T> IntoTableRef for T
where T: 'static + IntoIden,

source§

impl<I> IntoTypeRef for I
where I: IntoIden,

source§

fn into_type_ref(self) -> TypeRef

Available on crate feature backend-postgres only.
source§

impl<T> ToOwned for T
where 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 T
where 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 T
where 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.