SYMBOL INDEX (156 symbols across 16 files) FILE: savage/src/command.rs type Command (line 13) | pub enum Command { function parser (line 20) | fn parser() -> impl Parser { type Err (line 49) | type Err = Vec; method from_str (line 51) | fn from_str(string: &str) -> Result { function t (line 63) | fn t(string: &str, command: Command) { function parse (line 68) | fn parse() { FILE: savage/src/help.rs constant HELP_HEADER (line 23) | const HELP_HEADER: &str = include_str!("../help/header.md"); constant HELP_FOOTER (line 24) | const HELP_FOOTER: &str = include_str!("../help/footer.md"); function view_area (line 76) | fn view_area() -> Area { function show_help (line 87) | pub fn show_help(text: String) -> Result<(), Error> { FILE: savage/src/input.rs type TokenType (line 17) | enum TokenType { function tokenize (line 27) | fn tokenize(input: &str) -> Vec<(String, TokenType)> { type InputHelper (line 85) | pub struct InputHelper {} method highlight_prompt (line 88) | fn highlight_prompt<'b, 's: 'b, 'p: 'b>( method highlight (line 96) | fn highlight<'l>(&self, line: &'l str, pos: usize) -> Cow<'l, str> { method highlight_char (line 165) | fn highlight_char(&self, _line: &str, _pos: usize) -> bool { method validate (line 171) | fn validate(&self, ctx: &mut ValidationContext) -> Result Report { function main (line 97) | fn main() { FILE: savage_core/src/evaluate.rs type Error (line 15) | pub enum Error { function default_context (line 64) | pub fn default_context() -> HashMap { method evaluate_step_unary (line 87) | fn evaluate_step_unary( method evaluate_step_binary (line 151) | fn evaluate_step_binary( method evaluate_step (line 403) | fn evaluate_step(&self, context: &HashMap) -> Result) -> Result; type Complex (line 25) | pub type Complex = num::complex::Complex; type Vector (line 28) | pub type Vector = nalgebra::DVector; type Matrix (line 31) | pub type Matrix = nalgebra::DMatrix; type RationalRepresentation (line 35) | pub enum RationalRepresentation { method merge (line 46) | pub(crate) fn merge(self, other: Self) -> Self { type Expression (line 60) | pub enum Expression { method typ (line 155) | pub(crate) fn typ(&self) -> Type { method precedence_and_associativity (line 197) | pub(crate) fn precedence_and_associativity(&self) -> (isize, Associati... method precedence (line 261) | pub(crate) fn precedence(&self) -> isize { method associativity (line 268) | pub(crate) fn associativity(&self) -> Associativity { method parts (line 275) | pub(crate) fn parts(&self) -> Vec { method variables (line 339) | pub fn variables(&self) -> HashSet { type Type (line 123) | pub(crate) enum Type { type Associativity (line 144) | pub(crate) enum Associativity { FILE: savage_core/src/functions/combinatorics.rs function factorial (line 22) | fn factorial(n: NonNegativeInteger) -> Integer { FILE: savage_core/src/functions/linear_algebra.rs function determinant (line 21) | fn determinant(matrix: SquareMatrix) -> Expression { FILE: savage_core/src/functions/logic.rs function and (line 20) | fn and(a: bool, b: bool) -> bool { FILE: savage_core/src/functions/mod.rs type NonNegativeInteger (line 19) | pub(crate) type NonNegativeInteger = Integer; type PositiveInteger (line 24) | pub(crate) type PositiveInteger = Integer; type SquareMatrix (line 29) | pub(crate) type SquareMatrix = Matrix; type Parameter (line 33) | pub enum Parameter { type Metadata (line 58) | pub struct Metadata { type Function (line 72) | pub struct Function { function wrap_proxy (line 81) | fn wrap_proxy( function functions (line 143) | pub fn functions() -> Vec { function function_expression (line 156) | pub fn function_expression(name: &str) -> Option { function t (line 176) | fn t(expression: &str, result: &str) { function examples (line 189) | fn examples() { FILE: savage_core/src/functions/number_theory.rs function is_prime (line 30) | fn is_prime(n: NonNegativeInteger) -> Expression { function nth_prime (line 52) | fn nth_prime(n: PositiveInteger) -> Expression { function prime_pi (line 75) | fn prime_pi(n: NonNegativeInteger) -> Expression { FILE: savage_core/src/helpers.rs type Output (line 17) | type Output = Self; method neg (line 19) | fn neg(self) -> Self { type Output (line 25) | type Output = Self; method not (line 27) | fn not(self) -> Self { type Output (line 33) | type Output = Self; method add (line 35) | fn add(self, other: Self) -> Self { method add_assign (line 41) | fn add_assign(&mut self, other: Self) { type Output (line 47) | type Output = Self; method sub (line 49) | fn sub(self, other: Self) -> Self { method sub_assign (line 55) | fn sub_assign(&mut self, other: Self) { type Output (line 61) | type Output = Self; method mul (line 63) | fn mul(self, other: Self) -> Self { method mul_assign (line 69) | fn mul_assign(&mut self, other: Self) { type Output (line 75) | type Output = Self; method div (line 77) | fn div(self, other: Self) -> Self { method div_assign (line 83) | fn div_assign(&mut self, other: Self) { type Output (line 89) | type Output = Self; method rem (line 91) | fn rem(self, other: Self) -> Self { method rem_assign (line 97) | fn rem_assign(&mut self, other: Self) { method from (line 103) | fn from(expression: &Self) -> Self { method from (line 109) | fn from(integer: Integer) -> Self { type Error (line 115) | type Error = Expression; method try_from (line 117) | fn try_from(expression: Expression) -> Result { method from (line 131) | fn from(rational: Rational) -> Self { type Error (line 137) | type Error = Expression; method try_from (line 139) | fn try_from(expression: Expression) -> Result { method from (line 153) | fn from(complex: Complex) -> Self { type Error (line 159) | type Error = Expression; method try_from (line 161) | fn try_from(expression: Expression) -> Result { method from (line 171) | fn from(vector: Vector) -> Self { type Error (line 177) | type Error = Expression; method try_from (line 179) | fn try_from(expression: Expression) -> Result { method from (line 193) | fn from(matrix: Matrix) -> Self { type Error (line 199) | type Error = Expression; method try_from (line 201) | fn try_from(expression: Expression) -> Result { method from (line 211) | fn from(boolean: bool) -> Self { type Error (line 217) | type Error = Expression; function try_from (line 219) | fn try_from(expression: Expression) -> Result { function var (line 229) | pub fn var(identifier: impl Into) -> Expression { function fun (line 234) | pub fn fun(function: impl Into, arguments: impl Into) -> Expression { function rat (line 245) | pub fn rat(numerator: impl Into, denominator: impl Into, denominator: impl Into, exponent: impl Into)... function eq (line 307) | pub fn eq(left: impl Into, right: impl Into) -> ... function ne (line 312) | pub fn ne(left: impl Into, right: impl Into) -> ... function lt (line 317) | pub fn lt(left: impl Into, right: impl Into) -> ... function le (line 322) | pub fn le(left: impl Into, right: impl Into) -> ... function gt (line 327) | pub fn gt(left: impl Into, right: impl Into) -> ... function ge (line 332) | pub fn ge(left: impl Into, right: impl Into) -> ... function and (line 337) | pub fn and(a: impl Into, b: impl Into) -> Expres... function or (line 342) | pub fn or(a: impl Into, b: impl Into) -> Express... FILE: savage_core/src/parse.rs type Error (line 14) | pub type Error = chumsky::error::Simple>; type ErrorReason (line 17) | pub type ErrorReason = chumsky::error::SimpleReason>; function parser (line 25) | pub fn parser() -> impl Parser { type Err (line 241) | type Err = Vec; method from_str (line 243) | fn from_str(string: &str) -> Result { function t (line 256) | fn t(string: &str, expression: Expression) { function variables (line 261) | fn variables() { function functions (line 268) | fn functions() { function integers (line 287) | fn integers() { function rational_numbers (line 295) | fn rational_numbers() { function vectors (line 303) | fn vectors() { function matrices (line 318) | fn matrices() { function booleans (line 338) | fn booleans() { function operators (line 344) | fn operators() { function benchmark (line 389) | fn benchmark() { FILE: savage_core/src/print.rs function decimal_representation (line 13) | fn decimal_representation(x: &Rational) -> Option<(Integer, usize)> { method fmt_prefix (line 43) | fn fmt_prefix(&self, f: &mut Formatter<'_>, symbol: &str, a: &Self) -> R... method fmt_infix (line 57) | fn fmt_infix(&self, f: &mut Formatter<'_>, symbol: &str, a: &Self, b: &S... method fmt (line 82) | fn fmt(&self, f: &mut Formatter<'_>) -> Result { function t (line 247) | fn t(expression: Expression, string: &str) { function variables (line 252) | fn variables() { function functions (line 259) | fn functions() { function integers (line 275) | fn integers() { function rational_numbers (line 286) | fn rational_numbers() { function complex_numbers (line 310) | fn complex_numbers() { function vectors (line 336) | fn vectors() { function matrices (line 351) | fn matrices() { function booleans (line 372) | fn booleans() { function operators (line 378) | fn operators() { FILE: savage_core/src/simplify.rs method simplify (line 13) | pub(crate) fn simplify(&self) -> Self { function t (line 186) | fn t(expression: &str, result: &str) { function arithmetic (line 198) | fn arithmetic() { function logic (line 235) | fn logic() { function comparisons (line 256) | fn comparisons() { FILE: savage_macros/src/lib.rs type Arguments (line 13) | struct Arguments { function function (line 23) | pub fn function(attr: TokenStream, item: TokenStream) -> TokenStream { function functions (line 93) | pub fn functions(input: TokenStream) -> TokenStream {