pub enum SymbolicExpr {
Show 13 variants
Integer(BigInt),
Rational(BigInt, BigInt),
Sqrt {
radicand: BigInt,
},
ScaledSqrt {
coeff: (BigInt, BigInt),
rad: BigInt,
},
Pi,
E,
Add(Vec<SymbolicExpr>),
Mul(Vec<SymbolicExpr>),
Pow {
base: Box<SymbolicExpr>,
exp: Box<SymbolicExpr>,
},
Sin(Box<SymbolicExpr>),
Cos(Box<SymbolicExpr>),
Exp(Box<SymbolicExpr>),
Ln(Box<SymbolicExpr>),
}Expand description
A symbolic numeric expression.
Variants§
Integer(BigInt)
Rational(BigInt, BigInt)
p/q (not necessarily reduced until simplified).
Sqrt
√n with a simplified (square-free) radicand.
ScaledSqrt
(p/q)·√n.
Pi
E
Add(Vec<SymbolicExpr>)
Mul(Vec<SymbolicExpr>)
Pow
Sin(Box<SymbolicExpr>)
Cos(Box<SymbolicExpr>)
Exp(Box<SymbolicExpr>)
Ln(Box<SymbolicExpr>)
Implementations§
Source§impl SymbolicExpr
impl SymbolicExpr
pub fn int(n: i64) -> Self
pub fn rational(p: i64, q: i64) -> Self
pub fn sqrt(n: i64) -> Self
pub fn add(terms: Vec<SymbolicExpr>) -> Self
pub fn mul(factors: Vec<SymbolicExpr>) -> Self
pub fn sin(x: SymbolicExpr) -> Self
pub fn cos(x: SymbolicExpr) -> Self
pub fn exp(x: SymbolicExpr) -> Self
pub fn ln(x: SymbolicExpr) -> Self
Trait Implementations§
Source§impl Clone for SymbolicExpr
impl Clone for SymbolicExpr
Source§fn clone(&self) -> SymbolicExpr
fn clone(&self) -> SymbolicExpr
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SymbolicExpr
impl Debug for SymbolicExpr
impl Eq for SymbolicExpr
Source§impl Hash for SymbolicExpr
impl Hash for SymbolicExpr
Source§impl PartialEq for SymbolicExpr
impl PartialEq for SymbolicExpr
Source§fn eq(&self, other: &SymbolicExpr) -> bool
fn eq(&self, other: &SymbolicExpr) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for SymbolicExpr
Auto Trait Implementations§
impl Freeze for SymbolicExpr
impl RefUnwindSafe for SymbolicExpr
impl Send for SymbolicExpr
impl Sync for SymbolicExpr
impl Unpin for SymbolicExpr
impl UnsafeUnpin for SymbolicExpr
impl UnwindSafe for SymbolicExpr
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more