Trait scrypto::prelude::PartialOrd

1.0.0 · source ·
pub trait PartialOrd<Rhs = Self>: PartialEq<Rhs>
where Rhs: ?Sized,
{ // Required method fn partial_cmp(&self, other: &Rhs) -> Option<Ordering>; // Provided methods fn lt(&self, other: &Rhs) -> bool { ... } fn le(&self, other: &Rhs) -> bool { ... } fn gt(&self, other: &Rhs) -> bool { ... } fn ge(&self, other: &Rhs) -> bool { ... } }
Expand description

Trait for types that form a partial order.

The lt, le, gt, and ge methods of this trait can be called using the <, <=, >, and >= operators, respectively.

The methods of this trait must be consistent with each other and with those of PartialEq. The following conditions must hold:

  1. a == b if and only if partial_cmp(a, b) == Some(Equal).
  2. a < b if and only if partial_cmp(a, b) == Some(Less)
  3. a > b if and only if partial_cmp(a, b) == Some(Greater)
  4. a <= b if and only if a < b || a == b
  5. a >= b if and only if a > b || a == b
  6. a != b if and only if !(a == b).

Conditions 2–5 above are ensured by the default implementation. Condition 6 is already ensured by PartialEq.

If Ord is also implemented for Self and Rhs, it must also be consistent with partial_cmp (see the documentation of that trait for the exact requirements). It’s easy to accidentally make them disagree by deriving some of the traits and manually implementing others.

The comparison must satisfy, for all a, b and c:

  • transitivity: a < b and b < c implies a < c. The same must hold for both == and >.
  • duality: a < b if and only if b > a.

Note that these requirements mean that the trait itself must be implemented symmetrically and transitively: if T: PartialOrd<U> and U: PartialOrd<V> then U: PartialOrd<T> and T: PartialOrd<V>.

Violating these requirements is a logic error. The behavior resulting from a logic error is not specified, but users of the trait must ensure that such logic errors do not result in undefined behavior. This means that unsafe code must not rely on the correctness of these methods.

§Corollaries

The following corollaries follow from the above requirements:

  • irreflexivity of < and >: !(a < a), !(a > a)
  • transitivity of >: if a > b and b > c then a > c
  • duality of partial_cmp: partial_cmp(a, b) == partial_cmp(b, a).map(Ordering::reverse)

§Strict and non-strict partial orders

The < and > operators behave according to a strict partial order. However, <= and >= do not behave according to a non-strict partial order. That is because mathematically, a non-strict partial order would require reflexivity, i.e. a <= a would need to be true for every a. This isn’t always the case for types that implement PartialOrd, for example:

let a = f64::sqrt(-1.0);
assert_eq!(a <= a, false);

§Derivable

This trait can be used with #[derive].

When derived on structs, it will produce a lexicographic ordering based on the top-to-bottom declaration order of the struct’s members.

When derived on enums, variants are primarily ordered by their discriminants. Secondarily, they are ordered by their fields. By default, the discriminant is smallest for variants at the top, and largest for variants at the bottom. Here’s an example:

#[derive(PartialEq, PartialOrd)]
enum E {
    Top,
    Bottom,
}

assert!(E::Top < E::Bottom);

However, manually setting the discriminants can override this default behavior:

#[derive(PartialEq, PartialOrd)]
enum E {
    Top = 2,
    Bottom = 1,
}

assert!(E::Bottom < E::Top);

§How can I implement PartialOrd?

PartialOrd only requires implementation of the partial_cmp method, with the others generated from default implementations.

However it remains possible to implement the others separately for types which do not have a total order. For example, for floating point numbers, NaN < 0 == false and NaN >= 0 == false (cf. IEEE 754-2008 section 5.11).

PartialOrd requires your type to be PartialEq.

If your type is Ord, you can implement partial_cmp by using cmp:

use std::cmp::Ordering;

#[derive(Eq)]
struct Person {
    id: u32,
    name: String,
    height: u32,
}

impl PartialOrd for Person {
    fn partial_cmp(&self, other: &Self) -> Option<Ordering> {
        Some(self.cmp(other))
    }
}

impl Ord for Person {
    fn cmp(&self, other: &Self) -> Ordering {
        self.height.cmp(&other.height)
    }
}

impl PartialEq for Person {
    fn eq(&self, other: &Self) -> bool {
        self.height == other.height
    }
}

You may also find it useful to use partial_cmp on your type’s fields. Here is an example of Person types who have a floating-point height field that is the only field to be used for sorting:

use std::cmp::Ordering;

struct Person {
    id: u32,
    name: String,
    height: f64,
}

impl PartialOrd for Person {
    fn partial_cmp(&self, other: &Self) -> Option<Ordering> {
        self.height.partial_cmp(&other.height)
    }
}

impl PartialEq for Person {
    fn eq(&self, other: &Self) -> bool {
        self.height == other.height
    }
}

§Examples

let x: u32 = 0;
let y: u32 = 1;

assert_eq!(x < y, true);
assert_eq!(x.lt(&y), true);

Required Methods§

source

fn partial_cmp(&self, other: &Rhs) -> Option<Ordering>

This method returns an ordering between self and other values if one exists.

§Examples
use std::cmp::Ordering;

let result = 1.0.partial_cmp(&2.0);
assert_eq!(result, Some(Ordering::Less));

let result = 1.0.partial_cmp(&1.0);
assert_eq!(result, Some(Ordering::Equal));

let result = 2.0.partial_cmp(&1.0);
assert_eq!(result, Some(Ordering::Greater));

When comparison is impossible:

let result = f64::NAN.partial_cmp(&1.0);
assert_eq!(result, None);

Provided Methods§

source

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

This method tests less than (for self and other) and is used by the < operator.

§Examples
assert_eq!(1.0 < 1.0, false);
assert_eq!(1.0 < 2.0, true);
assert_eq!(2.0 < 1.0, false);
source

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

This method tests less than or equal to (for self and other) and is used by the <= operator.

§Examples
assert_eq!(1.0 <= 1.0, true);
assert_eq!(1.0 <= 2.0, true);
assert_eq!(2.0 <= 1.0, false);
source

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

This method tests greater than (for self and other) and is used by the > operator.

§Examples
assert_eq!(1.0 > 1.0, false);
assert_eq!(1.0 > 2.0, false);
assert_eq!(2.0 > 1.0, true);
source

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

This method tests greater than or equal to (for self and other) and is used by the >= operator.

§Examples
assert_eq!(1.0 >= 1.0, true);
assert_eq!(1.0 >= 2.0, false);
assert_eq!(2.0 >= 1.0, true);

Implementors§

source§

impl PartialOrd for AttachedModuleId

source§

impl PartialOrd for ModuleId

source§

impl PartialOrd for Proposer

source§

impl PartialOrd for Role

source§

impl PartialOrd for DefaultDepositRule

source§

impl PartialOrd for ResourcePreference

source§

impl PartialOrd for PartitionDescription

source§

impl PartialOrd for AccessRule

source§

impl PartialOrd for AccessRuleNode

source§

impl PartialOrd for MethodAccessibility

source§

impl PartialOrd for OwnerRoleUpdater

source§

impl PartialOrd for ProofRule

source§

impl PartialOrd for ResourceFeature

source§

impl PartialOrd for ResourceOrNonFungible

source§

impl PartialOrd for ManifestAddress

source§

impl PartialOrd for NonFungibleIdType

source§

impl PartialOrd for NonFungibleLocalId

§

impl PartialOrd for BlueprintHook

source§

impl PartialOrd for AccessControllerPartitionOffset

source§

impl PartialOrd for AccountPartitionOffset

source§

impl PartialOrd for AuthZoneField

source§

impl PartialOrd for BootLoaderField

source§

impl PartialOrd for ComponentField

source§

impl PartialOrd for ComponentRoyaltyPartitionOffset

source§

impl PartialOrd for ConsensusManagerPartitionOffset

source§

impl PartialOrd for EntityType

source§

impl PartialOrd for FungibleBucketField

source§

impl PartialOrd for FungibleProofField

source§

impl PartialOrd for FungibleResourceManagerPartitionOffset

source§

impl PartialOrd for FungibleVaultPartitionOffset

source§

impl PartialOrd for Level

source§

impl PartialOrd for MetadataPartitionOffset

source§

impl PartialOrd for MultiResourcePoolPartitionOffset

source§

impl PartialOrd for NonFungibleBucketField

source§

impl PartialOrd for NonFungibleProofField

source§

impl PartialOrd for NonFungibleResourceManagerPartitionOffset

source§

impl PartialOrd for NonFungibleVaultPartitionOffset

source§

impl PartialOrd for OneResourcePoolPartitionOffset

source§

impl PartialOrd for PackagePartitionOffset

source§

impl PartialOrd for RoleAssignmentPartitionOffset

source§

impl PartialOrd for RoyaltyField

source§

impl PartialOrd for SubstateKey

source§

impl PartialOrd for TransactionTrackerField

source§

impl PartialOrd for TwoResourcePoolPartitionOffset

source§

impl PartialOrd for TypeInfoField

source§

impl PartialOrd for ValidatorPartitionOffset

source§

impl PartialOrd for WorktopField

source§

impl PartialOrd for AsciiChar

1.7.0 · source§

impl PartialOrd for IpAddr

source§

impl PartialOrd for SocketAddr

source§

impl PartialOrd for ErrorKind

source§

impl PartialOrd for Sign

source§

impl PartialOrd for Ordering

1.34.0 · source§

impl PartialOrd for Infallible

source§

impl PartialOrd for bool

source§

impl PartialOrd for char

source§

impl PartialOrd for f32

source§

impl PartialOrd for f64

source§

impl PartialOrd for i8

source§

impl PartialOrd for i16

source§

impl PartialOrd for i32

source§

impl PartialOrd for i64

source§

impl PartialOrd for i128

source§

impl PartialOrd for isize

source§

impl PartialOrd for !

source§

impl PartialOrd for str

Implements comparison operations on strings.

Strings are compared lexicographically by their byte values. This compares Unicode code points based on their positions in the code charts. This is not necessarily the same as “alphabetical” order, which varies by language and locale. Comparing strings according to culturally-accepted standards requires locale-specific data that is outside the scope of the str type.

source§

impl PartialOrd for u8

source§

impl PartialOrd for u16

source§

impl PartialOrd for u32

source§

impl PartialOrd for u64

source§

impl PartialOrd for u128

source§

impl PartialOrd for ()

source§

impl PartialOrd for usize

source§

impl PartialOrd for EventFlags

source§

impl PartialOrd for FieldValue

source§

impl PartialOrd for LockFlags

source§

impl PartialOrd for BlueprintVersion

source§

impl PartialOrd for BlueprintVersionKey

source§

impl PartialOrd for CanonicalBlueprintId

source§

impl PartialOrd for CodeHash

source§

impl PartialOrd for MethodKey

source§

impl PartialOrd for ModuleRoleKey

source§

impl PartialOrd for NonFungibleGlobalId

source§

impl PartialOrd for OwnerRoleEntry

source§

impl PartialOrd for RoleKey

source§

impl PartialOrd for RoleList

source§

impl PartialOrd for VaultFreezeFlags

source§

impl PartialOrd for Bls12381G1PublicKey

source§

impl PartialOrd for Bls12381G2Signature

source§

impl PartialOrd for Ed25519PublicKey

source§

impl PartialOrd for Hash

source§

impl PartialOrd for Secp256k1PublicKey

source§

impl PartialOrd for ManifestProof

source§

impl PartialOrd for BytesNonFungibleLocalId

source§

impl PartialOrd for IntegerNonFungibleLocalId

source§

impl PartialOrd for RUIDNonFungibleLocalId

source§

impl PartialOrd for Reference

source§

impl PartialOrd for StringNonFungibleLocalId

source§

impl PartialOrd for Decimal

source§

impl PartialOrd for I192

source§

impl PartialOrd for I256

source§

impl PartialOrd for I320

source§

impl PartialOrd for I384

source§

impl PartialOrd for I448

source§

impl PartialOrd for I512

source§

impl PartialOrd for I768

source§

impl PartialOrd for PreciseDecimal

source§

impl PartialOrd for U192

source§

impl PartialOrd for U256

source§

impl PartialOrd for U320

source§

impl PartialOrd for U384

source§

impl PartialOrd for U448

source§

impl PartialOrd for U512

source§

impl PartialOrd for U768

§

impl PartialOrd for RefTypes

source§

impl PartialOrd for BlueprintId

source§

impl PartialOrd for ComponentAddress

source§

impl PartialOrd for Epoch

source§

impl PartialOrd for GlobalAddress

source§

impl PartialOrd for InternalAddress

source§

impl PartialOrd for NodeId

source§

impl PartialOrd for PackageAddress

source§

impl PartialOrd for PartitionNumber

source§

impl PartialOrd for PartitionOffset

source§

impl PartialOrd for ResourceAddress

source§

impl PartialOrd for SchemaHash

1.64.0 · source§

impl PartialOrd for CString

source§

impl PartialOrd for TypeId

1.27.0 · source§

impl PartialOrd for CpuidResult

source§

impl PartialOrd for CStr

source§

impl PartialOrd for Ipv4Addr

source§

impl PartialOrd for Ipv6Addr

source§

impl PartialOrd for SocketAddrV4

source§

impl PartialOrd for SocketAddrV6

1.3.0 · source§

impl PartialOrd for Duration

source§

impl PartialOrd for OsStr

source§

impl PartialOrd for OsString

source§

impl PartialOrd for Path

source§

impl PartialOrd for PathBuf

1.8.0 · source§

impl PartialOrd for Instant

1.8.0 · source§

impl PartialOrd for SystemTime

source§

impl PartialOrd for BigInt

source§

impl PartialOrd for BigUint

source§

impl PartialOrd for ATerm

source§

impl PartialOrd for B0

source§

impl PartialOrd for B1

source§

impl PartialOrd for Z0

source§

impl PartialOrd for Equal

source§

impl PartialOrd for Greater

source§

impl PartialOrd for Less

source§

impl PartialOrd for UTerm

source§

impl PartialOrd for scrypto::prelude::radix_engine_common::prelude::fmt::Error

1.33.0 · source§

impl PartialOrd for PhantomPinned

1.34.0 · source§

impl PartialOrd for NonZero<i8>

1.34.0 · source§

impl PartialOrd for NonZero<i16>

1.34.0 · source§

impl PartialOrd for NonZero<i32>

1.34.0 · source§

impl PartialOrd for NonZero<i64>

1.34.0 · source§

impl PartialOrd for NonZero<i128>

1.34.0 · source§

impl PartialOrd for NonZero<isize>

1.28.0 · source§

impl PartialOrd for NonZero<u8>

1.28.0 · source§

impl PartialOrd for NonZero<u16>

1.28.0 · source§

impl PartialOrd for NonZero<u32>

1.28.0 · source§

impl PartialOrd for NonZero<u64>

1.28.0 · source§

impl PartialOrd for NonZero<u128>

1.28.0 · source§

impl PartialOrd for NonZero<usize>

const: unstable · source§

impl PartialOrd for Alignment

source§

impl PartialOrd for String

§

impl PartialOrd for All

§

impl PartialOrd for BigEndian

§

impl PartialOrd for ClassBytesRange

§

impl PartialOrd for ClassUnicodeRange

§

impl PartialOrd for Error

§

impl PartialOrd for Error

§

impl PartialOrd for InvalidParityValue

§

impl PartialOrd for KeyPair

§

impl PartialOrd for KeyPair

§

impl PartialOrd for Literal

§

impl PartialOrd for LittleEndian

§

impl PartialOrd for Message

§

impl PartialOrd for NonMaxUsize

§

impl PartialOrd for Parity

§

impl PartialOrd for PatternID

§

impl PartialOrd for Position

§

impl PartialOrd for PublicKey

§

impl PartialOrd for PublicKey

§

impl PartialOrd for RecoverableSignature

§

impl PartialOrd for Scalar

§

impl PartialOrd for SecretKey

§

impl PartialOrd for SharedSecret

§

impl PartialOrd for SignOnly

§

impl PartialOrd for Signature

§

impl PartialOrd for Signature

§

impl PartialOrd for SmallIndex

§

impl PartialOrd for Span

§

impl PartialOrd for StateID

§

impl PartialOrd for Unit

§

impl PartialOrd for Utf8Range

§

impl PartialOrd for Utf8Sequence

§

impl PartialOrd for Variant

§

impl PartialOrd for VerifyOnly

§

impl PartialOrd for XOnlyPublicKey

§

impl PartialOrd for XOnlyPublicKey

§

impl PartialOrd for u5

1.16.0 · source§

impl PartialOrd<IpAddr> for Ipv4Addr

1.16.0 · source§

impl PartialOrd<IpAddr> for Ipv6Addr

source§

impl PartialOrd<str> for OsStr

source§

impl PartialOrd<str> for OsString

1.16.0 · source§

impl PartialOrd<Ipv4Addr> for IpAddr

1.16.0 · source§

impl PartialOrd<Ipv6Addr> for IpAddr

1.8.0 · source§

impl PartialOrd<OsStr> for Path

1.8.0 · source§

impl PartialOrd<OsStr> for PathBuf

1.8.0 · source§

impl PartialOrd<OsString> for Path

1.8.0 · source§

impl PartialOrd<OsString> for PathBuf

1.8.0 · source§

impl PartialOrd<Path> for OsStr

1.8.0 · source§

impl PartialOrd<Path> for OsString

1.8.0 · source§

impl PartialOrd<Path> for PathBuf

1.8.0 · source§

impl PartialOrd<PathBuf> for OsStr

1.8.0 · source§

impl PartialOrd<PathBuf> for OsString

1.8.0 · source§

impl PartialOrd<PathBuf> for Path

source§

impl<'a> PartialOrd for Component<'a>

source§

impl<'a> PartialOrd for Prefix<'a>

1.10.0 · source§

impl<'a> PartialOrd for Location<'a>

source§

impl<'a> PartialOrd for Components<'a>

source§

impl<'a> PartialOrd for PrefixComponent<'a>

1.8.0 · source§

impl<'a> PartialOrd<&'a OsStr> for Path

1.8.0 · source§

impl<'a> PartialOrd<&'a OsStr> for PathBuf

1.8.0 · source§

impl<'a> PartialOrd<&'a Path> for OsStr

1.8.0 · source§

impl<'a> PartialOrd<&'a Path> for OsString

1.8.0 · source§

impl<'a> PartialOrd<&'a Path> for PathBuf

1.8.0 · source§

impl<'a> PartialOrd<Cow<'a, OsStr>> for Path

1.8.0 · source§

impl<'a> PartialOrd<Cow<'a, OsStr>> for PathBuf

1.8.0 · source§

impl<'a> PartialOrd<Cow<'a, Path>> for OsStr

1.8.0 · source§

impl<'a> PartialOrd<Cow<'a, Path>> for OsString

1.8.0 · source§

impl<'a> PartialOrd<Cow<'a, Path>> for Path

1.8.0 · source§

impl<'a> PartialOrd<Cow<'a, Path>> for PathBuf

1.8.0 · source§

impl<'a> PartialOrd<OsStr> for &'a Path

1.8.0 · source§

impl<'a> PartialOrd<OsStr> for Cow<'a, Path>

1.8.0 · source§

impl<'a> PartialOrd<OsString> for &'a Path

1.8.0 · source§

impl<'a> PartialOrd<OsString> for Cow<'a, Path>

1.8.0 · source§

impl<'a> PartialOrd<Path> for &'a OsStr

1.8.0 · source§

impl<'a> PartialOrd<Path> for Cow<'a, OsStr>

1.8.0 · source§

impl<'a> PartialOrd<Path> for Cow<'a, Path>

1.8.0 · source§

impl<'a> PartialOrd<PathBuf> for &'a OsStr

1.8.0 · source§

impl<'a> PartialOrd<PathBuf> for &'a Path

1.8.0 · source§

impl<'a> PartialOrd<PathBuf> for Cow<'a, OsStr>

1.8.0 · source§

impl<'a> PartialOrd<PathBuf> for Cow<'a, Path>

1.8.0 · source§

impl<'a, 'b> PartialOrd<&'a OsStr> for OsString

1.8.0 · source§

impl<'a, 'b> PartialOrd<&'a Path> for Cow<'b, OsStr>

1.8.0 · source§

impl<'a, 'b> PartialOrd<&'b OsStr> for Cow<'a, OsStr>

1.8.0 · source§

impl<'a, 'b> PartialOrd<&'b OsStr> for Cow<'a, Path>

1.8.0 · source§

impl<'a, 'b> PartialOrd<&'b Path> for Cow<'a, Path>

1.8.0 · source§

impl<'a, 'b> PartialOrd<Cow<'a, OsStr>> for &'b OsStr

1.8.0 · source§

impl<'a, 'b> PartialOrd<Cow<'a, OsStr>> for OsStr

1.8.0 · source§

impl<'a, 'b> PartialOrd<Cow<'a, OsStr>> for OsString

1.8.0 · source§

impl<'a, 'b> PartialOrd<Cow<'a, Path>> for &'b OsStr

1.8.0 · source§

impl<'a, 'b> PartialOrd<Cow<'a, Path>> for &'b Path

1.8.0 · source§

impl<'a, 'b> PartialOrd<Cow<'b, OsStr>> for &'a Path

1.8.0 · source§

impl<'a, 'b> PartialOrd<OsStr> for Cow<'a, OsStr>

1.8.0 · source§

impl<'a, 'b> PartialOrd<OsStr> for OsString

1.8.0 · source§

impl<'a, 'b> PartialOrd<OsString> for &'a OsStr

1.8.0 · source§

impl<'a, 'b> PartialOrd<OsString> for Cow<'a, OsStr>

1.8.0 · source§

impl<'a, 'b> PartialOrd<OsString> for OsStr

source§

impl<'a, B> PartialOrd for Cow<'a, B>
where B: PartialOrd + ToOwned + ?Sized,

§

impl<'buf> PartialOrd for AllPreallocated<'buf>

§

impl<'buf> PartialOrd for SignOnlyPreallocated<'buf>

§

impl<'buf> PartialOrd for VerifyOnlyPreallocated<'buf>

source§

impl<A, B> PartialOrd<&B> for &A
where A: PartialOrd<B> + ?Sized, B: ?Sized,

source§

impl<A, B> PartialOrd<&mut B> for &mut A
where A: PartialOrd<B> + ?Sized, B: ?Sized,

source§

impl<Dyn> PartialOrd for DynMetadata<Dyn>
where Dyn: ?Sized,

1.4.0 · source§

impl<F> PartialOrd for F
where F: FnPtr,

source§

impl<K, V> PartialOrd for scrypto::prelude::radix_engine_common::prelude::indexmap::map::Slice<K, V>
where K: PartialOrd, V: PartialOrd,

source§

impl<K, V, A> PartialOrd for BTreeMap<K, V, A>
where K: PartialOrd, V: PartialOrd, A: Allocator + Clone,

1.41.0 · source§

impl<Ptr, Q> PartialOrd<Pin<Q>> for Pin<Ptr>
where Ptr: Deref, Q: Deref, <Ptr as Deref>::Target: PartialOrd<<Q as Deref>::Target>,

source§

impl<T> PartialOrd for Option<T>
where T: PartialOrd,

1.36.0 · source§

impl<T> PartialOrd for Poll<T>
where T: PartialOrd,

source§

impl<T> PartialOrd for *const T
where T: ?Sized,

source§

impl<T> PartialOrd for *mut T
where T: ?Sized,

source§

impl<T> PartialOrd for [T]
where T: PartialOrd,

Implements comparison of vectors lexicographically.

source§

impl<T> PartialOrd for (T₁, T₂, …, Tₙ)
where T: PartialOrd + ?Sized,

This trait is implemented for tuples up to twelve items long.

source§

impl<T> PartialOrd for BurnRoles<T>
where T: PartialOrd,

source§

impl<T> PartialOrd for DepositRoles<T>
where T: PartialOrd,

source§

impl<T> PartialOrd for FreezeRoles<T>
where T: PartialOrd,

source§

impl<T> PartialOrd for MintRoles<T>
where T: PartialOrd,

source§

impl<T> PartialOrd for NonFungibleDataUpdateRoles<T>
where T: PartialOrd,

source§

impl<T> PartialOrd for RecallRoles<T>
where T: PartialOrd,

source§

impl<T> PartialOrd for WithdrawRoles<T>
where T: PartialOrd,

source§

impl<T> PartialOrd for scrypto::prelude::radix_engine_common::prelude::indexmap::set::Slice<T>
where T: PartialOrd,

1.19.0 · source§

impl<T> PartialOrd for Reverse<T>
where T: PartialOrd,

1.20.0 · source§

impl<T> PartialOrd for ManuallyDrop<T>
where T: PartialOrd + ?Sized,

1.74.0 · source§

impl<T> PartialOrd for Saturating<T>
where T: PartialOrd,

source§

impl<T> PartialOrd for Wrapping<T>
where T: PartialOrd,

1.25.0 · source§

impl<T> PartialOrd for NonNull<T>
where T: ?Sized,

1.10.0 · source§

impl<T> PartialOrd for Cell<T>
where T: PartialOrd + Copy,

source§

impl<T> PartialOrd for PhantomData<T>
where T: ?Sized,

1.10.0 · source§

impl<T> PartialOrd for RefCell<T>
where T: PartialOrd + ?Sized,

source§

impl<T, A1, A2> PartialOrd<Vec<T, A2>> for Vec<T, A1>
where T: PartialOrd, A1: Allocator, A2: Allocator,

Implements comparison of vectors, lexicographically.

source§

impl<T, A> PartialOrd for Arc<T, A>
where T: PartialOrd + ?Sized, A: Allocator,

source§

impl<T, A> PartialOrd for BTreeSet<T, A>
where T: PartialOrd, A: Allocator + Clone,

source§

impl<T, A> PartialOrd for Box<T, A>
where T: PartialOrd + ?Sized, A: Allocator,

source§

impl<T, A> PartialOrd for LinkedList<T, A>
where T: PartialOrd, A: Allocator,

source§

impl<T, A> PartialOrd for Rc<T, A>
where T: PartialOrd + ?Sized, A: Allocator,

source§

impl<T, A> PartialOrd for VecDeque<T, A>
where T: PartialOrd, A: Allocator,

source§

impl<T, E> PartialOrd for Result<T, E>
where T: PartialOrd, E: PartialOrd,

§

impl<T, N> PartialOrd for GenericArray<T, N>
where T: PartialOrd, N: ArrayLength<T>,

source§

impl<T, const N: usize> PartialOrd for [T; N]
where T: PartialOrd,

source§

impl<T, const N: usize> PartialOrd for Mask<T, N>

source§

impl<T, const N: usize> PartialOrd for Simd<T, N>

source§

impl<U> PartialOrd for NInt<U>

source§

impl<U> PartialOrd for PInt<U>

source§

impl<U, B> PartialOrd for UInt<U, B>
where U: PartialOrd, B: PartialOrd,

source§

impl<V, A> PartialOrd for TArr<V, A>
where V: PartialOrd, A: PartialOrd,

source§

impl<Y, R> PartialOrd for CoroutineState<Y, R>
where Y: PartialOrd, R: PartialOrd,

§

impl<const N: usize> PartialOrd for BInt<N>

§

impl<const N: usize> PartialOrd for BIntD8<N>

§

impl<const N: usize> PartialOrd for BIntD16<N>

§

impl<const N: usize> PartialOrd for BIntD32<N>

§

impl<const N: usize> PartialOrd for BUint<N>

§

impl<const N: usize> PartialOrd for BUintD8<N>

§

impl<const N: usize> PartialOrd for BUintD16<N>

§

impl<const N: usize> PartialOrd for BUintD32<N>