var searchIndex = {}; searchIndex["ramp"] = {"doc":"","items":[[0,"ll","ramp","This module provides the low-level operations for working with arbitrary precision numbers.",null,null],[5,"shl","ramp::ll","Performs a bit-shift of the limbs in {xp, xs}, left by `cnt` bits storing the result in {rp,\nrs}. The top-most shifted bits are returned.",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"i32"},{"name":"u32"}],"output":{"name":"limb"}}],[5,"shr","","Performs a bit-shift of the limbs in {xp, xs}, right by `cnt` bits storing the result in {rp,\nrs}. The bottom-most shifted bits are returned.",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"i32"},{"name":"u32"}],"output":{"name":"limb"}}],[5,"and_n","","Performs a bitwise "and" (`&`) of the n least signficant limbs of `xp` and `yp`, storing the\nresult in `wp`",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"limbs"},{"name":"i32"}],"output":null}],[5,"and_not_n","","Performs a bitwise and of the n least signficant limbs of `xp` and `yp`, with the limbs of `yp`\nbeing first inverted. The result is stored in `wp`.",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"limbs"},{"name":"i32"}],"output":null}],[5,"nand_n","","Performs a bitwise "nand" of the n least signficant limbs of `xp` and `yp`, storing the\nresult in `wp`",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"limbs"},{"name":"i32"}],"output":null}],[5,"or_n","","Performs a bitwise "or" (`|`) of the n least signficant limbs of `xp` and `yp`, storing the\nresult in `wp`",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"limbs"},{"name":"i32"}],"output":null}],[5,"or_not_n","","Performs a bitwise "or" of the n least signficant limbs of `xp` and `yp`, with the limbs of `yp`\nbeing first inverted. The result is stored in `wp`.",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"limbs"},{"name":"i32"}],"output":null}],[5,"nor_n","","Performs a bitwise "nor" of the n least signficant limbs of `xp` and `yp`, storing the\nresult in `wp`",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"limbs"},{"name":"i32"}],"output":null}],[5,"xor_n","","Performs a bitwise "xor" (`^`) of the n least signficant limbs of `xp` and `yp`, storing the\nresult in `wp`",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"limbs"},{"name":"i32"}],"output":null}],[5,"not","","Performs a bitwise inversion ("not") of the n least signficant limbs of `xp`, storing the\nresult in `wp`",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"i32"}],"output":null}],[5,"scan_1","","Scans for the first 1 bit starting from the least-significant bit the the most, returning\nthe bit index.",null,{"inputs":[{"name":"limbs"},{"name":"i32"}],"output":{"name":"u32"}}],[5,"scan_0","","Scans for the first 0 bit starting from the least-significant bit the the most, returning\nthe bit index.",null,{"inputs":[{"name":"limbs"},{"name":"i32"}],"output":{"name":"u32"}}],[5,"twos_complement","","Computes the two's complement of the `xs` least significant words\nof `xp`. The result is stored the result in `wp`, and a carry is\nreturned, if there is one.",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"i32"}],"output":{"name":"limb"}}],[5,"add_n","","Adds the `n` least signficant limbs of `xp` and `yp`, storing the result in {wp, n}.\nIf there was a carry, it is returned.",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"limbs"},{"name":"i32"}],"output":{"name":"limb"}}],[5,"sub_n","","Subtracts the `n` least signficant limbs of `yp` from `xp`, storing the result in {wp, n}.\nIf there was a borrow from a higher-limb (i.e., the result would be negative), it is returned.",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"limbs"},{"name":"i32"}],"output":{"name":"limb"}}],[5,"add","","",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"i32"},{"name":"limbs"},{"name":"i32"}],"output":{"name":"limb"}}],[5,"sub","","",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"i32"},{"name":"limbs"},{"name":"i32"}],"output":{"name":"limb"}}],[5,"add_1","","",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"i32"},{"name":"limb"}],"output":{"name":"limb"}}],[5,"sub_1","","",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"i32"},{"name":"limb"}],"output":{"name":"limb"}}],[5,"incr","","",null,{"inputs":[{"name":"limbsmut"},{"name":"limb"}],"output":null}],[5,"decr","","",null,{"inputs":[{"name":"limbsmut"},{"name":"limb"}],"output":null}],[5,"addmul_1","","Multiplies the `n` least-signficiant digits of `xp` by `vl` and adds them to the `n`\nleast-significant digits of `wp`. Returns the highest limb of the result.",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"i32"},{"name":"limb"}],"output":{"name":"limb"}}],[5,"submul_1","","Multiplies the `n` least-signficiant digits of `xp` by `vl` and subtracts them from the `n`\nleast-significant digits of `wp`. Returns the highest limb of the result, adjust for borrow.",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"i32"},{"name":"limb"}],"output":{"name":"limb"}}],[5,"mul_1","","Multiplies the `n` least-significant limbs of `xp` by `vl` storing the `n` least-significant\nlimbs of the product in `{wp, n}`.",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"i32"},{"name":"limb"}],"output":{"name":"limb"}}],[5,"mul","","Multiplies `{xp, xs}` by `{yp, ys}`, storing the result to `{wp, xs + ys}`.",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"i32"},{"name":"limbs"},{"name":"i32"}],"output":null}],[5,"sqr","","Squares the number in `{xp, xs}` storing the result in `{wp, xs*2}`.\nThis is slightly more efficient than regular multiplication with both\ninputs the same.",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"i32"}],"output":null}],[5,"divrem_1","","Divides the `xs` least-significant limbs at `xp` by `d`, storing the result in {qp, qxn + xs}.",null,{"inputs":[{"name":"limbsmut"},{"name":"i32"},{"name":"limbs"},{"name":"i32"},{"name":"limb"}],"output":{"name":"limb"}}],[5,"divrem_2","","",null,{"inputs":[{"name":"limbsmut"},{"name":"i32"},{"name":"limbsmut"},{"name":"i32"},{"name":"limbs"}],"output":{"name":"limb"}}],[5,"divrem","","Divides {np, ns} by {dp, ds}. If ns <= ds, the quotient is stored in {qp, 1}, otherwise\nthe quotient is stored to {qp, (ns - ds) + 1}. The remainder is always stored to {rp, ds}.",null,{"inputs":[{"name":"limbsmut"},{"name":"limbsmut"},{"name":"limbs"},{"name":"i32"},{"name":"limbs"},{"name":"i32"}],"output":null}],[5,"gcd","","",null,{"inputs":[{"name":"limbsmut"},{"name":"limbsmut"},{"name":"i32"},{"name":"limbsmut"},{"name":"i32"}],"output":{"name":"i32"}}],[5,"overlap","","",null,{"inputs":[{"name":"limbsmut"},{"name":"i32"},{"name":"limbs"},{"name":"i32"}],"output":{"name":"bool"}}],[5,"same_or_separate","","",null,{"inputs":[{"name":"limbsmut"},{"name":"i32"},{"name":"limbs"},{"name":"i32"}],"output":{"name":"bool"}}],[5,"same_or_incr","","",null,{"inputs":[{"name":"limbsmut"},{"name":"i32"},{"name":"limbs"},{"name":"i32"}],"output":{"name":"bool"}}],[5,"same_or_decr","","",null,{"inputs":[{"name":"limbsmut"},{"name":"i32"},{"name":"limbs"},{"name":"i32"}],"output":{"name":"bool"}}],[5,"copy_incr","","Copies the `n` limbs from `src` to `dst` in an incremental fashion.",null,{"inputs":[{"name":"limbs"},{"name":"limbsmut"},{"name":"i32"}],"output":null}],[5,"copy_decr","","Copies the `n` limbs from `src` to `dst` in a decremental fashion.",null,{"inputs":[{"name":"limbs"},{"name":"limbsmut"},{"name":"i32"}],"output":null}],[5,"copy_rest","","Copies the `n - start` limbs from `src + start` to `dst + start`",null,{"inputs":[{"name":"limbs"},{"name":"limbsmut"},{"name":"i32"},{"name":"i32"}],"output":null}],[5,"normalize","","Returns the size of the integer pointed to by `p` such that the most\nsignificant limb is non-zero.",null,{"inputs":[{"name":"limbs"},{"name":"i32"}],"output":{"name":"i32"}}],[5,"divide_by_zero","","Called when a divide by zero occurs.",null,{"inputs":[],"output":null}],[5,"is_zero","","Checks that all `nn` limbs in `np` are zero",null,{"inputs":[{"name":"limbs"},{"name":"i32"}],"output":{"name":"bool"}}],[5,"zero","","",null,{"inputs":[{"name":"limbsmut"},{"name":"i32"}],"output":null}],[5,"cmp","","Compares the `n` least-significant limbs of `xp` and `yp`, returning whether\n{xp, n} is less than, equal to or greater than {yp, n}",null,{"inputs":[{"name":"limbs"},{"name":"limbs"},{"name":"i32"}],"output":{"name":"ordering"}}],[0,"pow","","",null,null],[5,"pow","ramp::ll::pow","Takes `{ap, an}` to the power of `exp` and stores the result to `wp`. `wp` is\nassumed to have enough space to store the result (which can be calculated using\n`num_pow_limbs`",null,{"inputs":[{"name":"limbsmut"},{"name":"limbs"},{"name":"i32"},{"name":"u32"}],"output":null}],[5,"num_pow_limbs","","Calculates the number of limbs required to store the result of taking\n`{xp, xn}` to the power of `exp`",null,{"inputs":[{"name":"limbs"},{"name":"i32"},{"name":"u32"}],"output":{"name":"i32"}}],[0,"base","ramp::ll","Base conversion utilities",null,null],[5,"num_base_digits","ramp::ll::base","Returns the number of digits needed to represent `p` in base `base`\nwithout sign. If the base is not a power of two, the result is only\nan estimate. It can equal the the actually needed digits or overestimate\nby 1.\nReturns 1 if the number is 0;",null,{"inputs":[{"name":"limbs"},{"name":"i32"},{"name":"u32"}],"output":{"name":"usize"}}],[5,"base_digits_to_len","","",null,{"inputs":[{"name":"usize"},{"name":"u32"}],"output":{"name":"usize"}}],[5,"to_base","","Converts `nn` limbs at `np` to the given base, storing the output in `out`. `out` is assumed to\nhave enough space for the entire digit. The output is stored from most-significant digit to least.",null,{"inputs":[{"name":"u32"},{"name":"limbs"},{"name":"i32"},{"name":"f"}],"output":null}],[5,"from_base","","Converts the base `base` bytestring {bp, bs}, storing the limbs in `out`. `out` is assumed to\nhave enough space to store the result.",null,null],[0,"limb","ramp::ll","",null,null],[3,"Limb","ramp::ll::limb","Helper newtype for operations.",null,null],[12,"0","","",0,null],[5,"add_2","","Performs the two-word addition (ah, al) + (bh, bl), ignoring any overflow.",null,null],[5,"sub_2","","Performs the two-word subtraction (ah, al) - (bh, bl), ignoring any borrow.",null,null],[5,"div","","Divides the two-limb numerator `(nh, nl)` by `d`, returning a single-limb\nquotient, Q, and remainder, R, as (Q, R).",null,null],[5,"div_preinv","","Divides `(nh, nl)` by `d` using the inverted limb `dinv`. Returns the quotient, Q, and\nremainder, R, as (Q, R);",null,null],[6,"BaseInt","","",null,null],[11,"hash","","",0,null],[11,"cmp","","",0,null],[11,"clone","","",0,null],[18,"BITS","ramp::ll","",0,null],[18,"B","","",0,null],[11,"high_part","ramp::ll::limb","Returns the high half of the limb",0,null],[11,"low_part","","Returns the low half of the limb",0,null],[11,"add_overflow","","Performs `self + other`, returning the result and whether or not the addition overflowed",0,null],[11,"sub_overflow","","Performs `self - other`, returning the result and whether or not the subtraction overflowed",0,null],[11,"mul_lo","","Performs `self * other` returning the lower half of the product",0,null],[11,"mul_hi","","Performs `self * other` returning the higher half of the product",0,null],[11,"mul_hilo","","Performs `self * other` returning the two-limb result as (high, low).",0,null],[11,"invert","","",0,null],[11,"high_bit_set","","Returns whether or not the highest bit in the limb is set.",0,null],[11,"leading_zeros","","Returns the number of leading zeros in the limb",0,null],[11,"trailing_zeros","","Returns the number of trailing zeros in the limb",0,null],[11,"add","","",0,null],[11,"add","","",0,null],[11,"add","","",0,null],[11,"add","","",1,null],[11,"sub","","",0,null],[11,"sub","","",0,null],[11,"sub","","",0,null],[11,"sub","","",1,null],[11,"mul","","",0,null],[11,"mul","","",0,null],[11,"mul","","",1,null],[11,"div","","",0,null],[11,"div","","",0,null],[11,"rem","","",0,null],[11,"rem","","",0,null],[11,"neg","","",0,null],[11,"shl","","",0,null],[11,"shr","","",0,null],[11,"not","","",0,null],[11,"bitand","","",0,null],[11,"bitor","","",0,null],[11,"bitxor","","",0,null],[11,"eq","","",0,null],[11,"ne","","",0,null],[11,"partial_cmp","","",0,null],[11,"lt","","",0,null],[11,"le","","",0,null],[11,"gt","","",0,null],[11,"ge","","",0,null],[11,"eq","","",0,null],[11,"ne","","",0,null],[11,"partial_cmp","","",0,null],[11,"lt","","",0,null],[11,"le","","",0,null],[11,"gt","","",0,null],[11,"ge","","",0,null],[11,"fmt","","",0,null],[11,"fmt","","",0,null],[0,"limb_ptr","ramp::ll","",null,null],[3,"Limbs","ramp::ll::limb_ptr","A version of `*const Limb` that is bounds-checked when debug assertions are on",null,null],[3,"LimbsMut","","A version of `*mut Limb` that is bounds-checked when debug assertions are on",null,null],[11,"fmt","","",2,null],[11,"clone","","",2,null],[11,"clone","","",3,null],[11,"new","","Create a new instance, pointing at `base` and valid\nfrom `base.offset(start)` to `base.offset(end)`.",2,null],[11,"offset","","Move `self` to point to the `x`th Limbs from the\ncurrent location.",2,null],[11,"eq","","",2,null],[11,"partial_cmp","","",2,null],[11,"cmp","","",2,null],[11,"deref","","",2,null],[11,"new","","Create a new instance, pointing at `base` and valid\nfrom `base.offset(start)` to `base.offset(end)`.",3,null],[11,"offset","","Move `self` to point to the `x`th Limbs from the\ncurrent location.",3,null],[11,"eq","","",3,null],[11,"partial_cmp","","",3,null],[11,"cmp","","",3,null],[11,"deref","","",3,null],[11,"as_const","","View the `LimbsMut` as a `Limbs` (an explicit `*const\nLimb` -> `*mut Limb` conversion)",3,null],[11,"deref_mut","","",3,null],[0,"traits","ramp","",null,null],[8,"DivRem","ramp::traits","",null,null],[16,"Output","","",4,null],[10,"divrem","","",4,null],[0,"int","ramp","",null,null],[3,"Int","ramp::int","An arbitrary-precision signed integer.",null,null],[3,"ParseIntError","","",null,null],[8,"RandomInt","","Trait for generating random `Int`.",null,null],[10,"gen_uint","","Generate a random unsigned `Int` of given bit size.",5,null],[10,"gen_int","","Generate a random `Int` of given bit size.",5,null],[10,"gen_uint_below","","Generate a random unsigned `Int` less than the given bound.\nFails when the bound is zero or negative.",5,null],[10,"gen_int_range","","Generate a random `Int` within the given range.\nThe lower bound is inclusive; the upper bound is exclusive.\nFails when the upper bound is not greater than the lower bound.",5,null],[11,"zero","","",6,{"inputs":[],"output":{"name":"int"}}],[11,"one","","",6,{"inputs":[],"output":{"name":"int"}}],[11,"from_single_limb","","Creates a new Int from the given Limb.",6,{"inputs":[{"name":"limb"}],"output":{"name":"int"}}],[11,"sign","","Returns the sign of the Int as either -1, 0 or 1 for self being negative, zero\nor positive, respectively.",6,null],[11,"abs","","Consumes self and returns the absolute value",6,null],[11,"to_single_limb","","Returns the least-significant limb of self.",6,null],[11,"abs_cmp","","Compare the absolute value of self to the absolute value of other,\nreturning an Ordering with the result.",6,null],[11,"abs_eq","","Returns the equality of the absolute values of self and\nother.",6,null],[11,"abs_hash","","Hashes the value without including the sign, useful for when the\nsign is handled elsewhere and making a copy just to change the sign\nis wasteful",6,null],[11,"shrink_to_fit","","Try to shrink the allocated data for this Int.",6,null],[11,"to_str_radix","","Returns a string containing the value of self in base `base`. For bases greater than\nten, if `upper` is true, upper-case letters are used, otherwise lower-case ones are used.",6,null],[11,"write_radix","","",6,null],[11,"from_str_radix","","Creates a new Int from the given string in base `base`.",6,{"inputs":[{"name":"str"},{"name":"u8"}],"output":{"name":"result"}}],[11,"divmod","","Divide self by other, returning the quotient, Q, and remainder, R as (Q, R).",6,null],[11,"pow","","Raises self to the power of exp",6,null],[11,"square","","Returns the square of `self`.",6,null],[11,"dsquare","","",6,null],[11,"sqrt_rem","","Compute the sqrt of this number, returning its floor, S, and the\nremainder, R, as Some((S, R)), or None if this number is negative.",6,null],[11,"negate","","Negates `self` in-place",6,null],[11,"is_even","","Returns whether or not this number is even.",6,null],[11,"trailing_zeros","","Returns the number of trailing zero bits in this number",6,null],[11,"count_ones","","Returns the number of ones (the population count) in this number",6,null],[11,"bit_length","","Returns the number of bits required to represent (the absolute\nvalue of) this number, that is, `floor(log2(abs(self))) + 1`.",6,null],[11,"bit","","Returns the value of the `bit`th bit in this number, as if it\nwere represented in two's complement.",6,null],[11,"set_bit","","Set the `bit`th bit of this number to `bit_val`, treating\nnegative numbers as if they're stored in two's complement.",6,null],[11,"gcd","","Calculates the Greatest Common Divisor (GCD) of the number and `other`.",6,null],[11,"lcm","","Calculates the Lowest Common Multiple (LCM) of the number and `other`.",6,null],[11,"to_f64","","",6,null],[11,"clone","","",6,null],[11,"clone_from","","",6,null],[11,"default","","",6,{"inputs":[],"output":{"name":"int"}}],[11,"drop","","",6,null],[11,"eq","","",6,null],[11,"eq","","",6,null],[11,"eq","ramp::ll::limb","",0,null],[11,"cmp","ramp::int","",6,null],[11,"partial_cmp","","",6,null],[11,"partial_cmp","","",6,null],[11,"partial_cmp","ramp::ll::limb","",0,null],[11,"hash","ramp::int","",6,null],[11,"add_assign","","",6,null],[11,"add","","",6,null],[11,"add_assign","","",6,null],[11,"add","","",6,null],[11,"add","","",6,null],[11,"add_assign","","",6,null],[11,"sub_assign","","",6,null],[11,"sub","","",6,null],[11,"sub_assign","","",6,null],[11,"sub","","",6,null],[11,"sub","","",6,null],[11,"sub_assign","","",6,null],[11,"mul_assign","","",6,null],[11,"mul","","",6,null],[11,"mul","","",6,null],[11,"mul","","",6,null],[11,"mul_assign","","",6,null],[11,"mul_assign","","",6,null],[11,"div_assign","","",6,null],[11,"div","","",6,null],[11,"div","","",6,null],[11,"div","","",6,null],[11,"div_assign","","",6,null],[11,"div_assign","","",6,null],[11,"rem","","",6,null],[11,"rem_assign","","",6,null],[11,"divrem","","",6,null],[11,"rem","","",6,null],[11,"rem","","",6,null],[11,"rem_assign","","",6,null],[11,"rem_assign","","",6,null],[11,"neg","","",6,null],[11,"shl_assign","","",6,null],[11,"shl","","",6,null],[11,"shr_assign","","",6,null],[11,"shr","","",6,null],[11,"bitand","","",6,null],[11,"bitand_assign","","",6,null],[11,"bitand","","",6,null],[11,"bitand","","",6,null],[11,"bitand_assign","","",6,null],[11,"bitand_assign","","",6,null],[11,"bitor","","",6,null],[11,"bitor_assign","","",6,null],[11,"bitor","","",6,null],[11,"bitor","","",6,null],[11,"bitor_assign","","",6,null],[11,"bitor_assign","","",6,null],[11,"bitxor","","",6,null],[11,"bitxor_assign","","",6,null],[11,"bitxor","","",6,null],[11,"bitxor","","",6,null],[11,"bitxor_assign","","",6,null],[11,"bitxor_assign","","",6,null],[11,"add","","",6,null],[11,"add_assign","","",6,null],[11,"sub","","",6,null],[11,"sub_assign","","",6,null],[11,"mul","","",6,null],[11,"mul_assign","","",6,null],[11,"div_assign","","",6,null],[11,"div","","",6,null],[11,"rem_assign","","",6,null],[11,"rem","","",6,null],[11,"divrem","","",6,null],[11,"bitand_assign","","",6,null],[11,"bitor_assign","","",6,null],[11,"bitxor_assign","","",6,null],[11,"bitand","","",6,null],[11,"bitor","","",6,null],[11,"bitxor","","",6,null],[11,"add","","",6,null],[11,"add_assign","","",6,null],[11,"sub","","",6,null],[11,"sub_assign","","",6,null],[11,"mul","","",6,null],[11,"mul_assign","","",6,null],[11,"div","","",6,null],[11,"div_assign","","",6,null],[11,"rem","","",6,null],[11,"rem_assign","","",6,null],[11,"divrem","","",6,null],[11,"bitand_assign","","",6,null],[11,"bitor_assign","","",6,null],[11,"bitxor_assign","","",6,null],[11,"bitand","","",6,null],[11,"bitor","","",6,null],[11,"bitxor","","",6,null],[11,"add","","",6,null],[11,"add_assign","","",6,null],[11,"sub","","",6,null],[11,"sub_assign","","",6,null],[11,"mul","","",6,null],[11,"mul_assign","","",6,null],[11,"div","","",6,null],[11,"div_assign","","",6,null],[11,"rem","","",6,null],[11,"rem_assign","","",6,null],[11,"divrem","","",6,null],[11,"bitand_assign","","",6,null],[11,"bitor_assign","","",6,null],[11,"bitxor_assign","","",6,null],[11,"add","","",1,null],[11,"add","","",1,null],[11,"sub","","",1,null],[11,"sub","","",1,null],[11,"mul","","",1,null],[11,"mul","","",1,null],[11,"div","","",1,null],[11,"div","","",1,null],[11,"rem","","",1,null],[11,"rem","","",1,null],[11,"bitand","","",6,null],[11,"bitand","","",1,null],[11,"bitand","","",1,null],[11,"bitor","","",6,null],[11,"bitor","","",1,null],[11,"bitor","","",1,null],[11,"bitxor","","",6,null],[11,"bitxor","","",1,null],[11,"bitxor","","",1,null],[11,"eq","","",6,null],[11,"partial_cmp","","",6,null],[11,"eq","","",6,null],[11,"partial_cmp","","",6,null],[11,"eq","","",6,null],[11,"partial_cmp","","",6,null],[11,"eq","","",6,null],[11,"partial_cmp","","",6,null],[11,"from","","",6,{"inputs":[{"name":"i8"}],"output":{"name":"int"}}],[11,"from","","",6,{"inputs":[{"name":"i16"}],"output":{"name":"int"}}],[11,"from","","",6,{"inputs":[{"name":"i32"}],"output":{"name":"int"}}],[11,"from","","",6,{"inputs":[{"name":"i64"}],"output":{"name":"int"}}],[11,"from","","",6,{"inputs":[{"name":"isize"}],"output":{"name":"int"}}],[11,"from","","",6,{"inputs":[{"name":"u8"}],"output":{"name":"int"}}],[11,"from","","",6,{"inputs":[{"name":"u16"}],"output":{"name":"int"}}],[11,"from","","",6,{"inputs":[{"name":"u32"}],"output":{"name":"int"}}],[11,"from","","",6,{"inputs":[{"name":"u64"}],"output":{"name":"int"}}],[11,"from","","",6,{"inputs":[{"name":"usize"}],"output":{"name":"int"}}],[11,"fmt","","",6,null],[11,"fmt","","",6,null],[11,"fmt","","",6,null],[11,"fmt","","",6,null],[11,"fmt","","",6,null],[11,"fmt","","",6,null],[11,"eq","","",7,null],[11,"ne","","",7,null],[11,"clone","","",7,null],[11,"fmt","","",7,null],[11,"description","","",7,null],[11,"fmt","","",7,null],[11,"from_str","","",6,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[11,"zero","","",6,{"inputs":[],"output":{"name":"int"}}],[11,"one","","",6,{"inputs":[],"output":{"name":"int"}}],[11,"step","","",6,null],[11,"steps_between","","",6,{"inputs":[{"name":"int"},{"name":"int"},{"name":"int"}],"output":{"name":"option"}}],[11,"steps_between_by_one","","",6,{"inputs":[{"name":"self"},{"name":"self"}],"output":{"name":"option"}}],[11,"is_negative","","",6,null],[11,"replace_one","","",6,null],[11,"replace_zero","","",6,null],[11,"add_one","","",6,null],[11,"sub_one","","",6,null],[0,"rational","ramp","",null,null],[3,"Rational","ramp::rational","An arbitrary-precision rational number.",null,null],[11,"abs","","Returns the absolute value of this Rational",8,null],[11,"new","","",8,{"inputs":[{"name":"int"},{"name":"int"}],"output":{"name":"rational"}}],[11,"normalized","","Returns whether or not this rational is normalized or not",8,null],[11,"normalize","","Normalize this Rational.",8,null],[11,"invert","","Returns the reciprocal of this Rational",8,null],[11,"round","","Returns this Rational to the nearest Int",8,null],[11,"sign","","Returns the sign of the Int as either -1, 0 or 1 for self being negative, zero\nor positive, respectively.",8,null],[11,"to_f64","","Converts this Rational to an `f64` value.",8,null],[11,"clone","","",8,null],[11,"clone_from","","",8,null],[11,"default","","",8,{"inputs":[],"output":{"name":"rational"}}],[11,"eq","","",8,null],[11,"eq","","",8,null],[11,"eq","ramp::int","",6,null],[11,"cmp","ramp::rational","",8,null],[11,"partial_cmp","","",8,null],[11,"partial_cmp","","",8,null],[11,"partial_cmp","ramp::int","",6,null],[11,"hash","ramp::rational","",8,null],[11,"add_assign","","",8,null],[11,"add_assign","","",8,null],[11,"add_assign","","",8,null],[11,"add_assign","","",8,null],[11,"add","","",8,null],[11,"add","","",8,null],[11,"add","","",8,null],[11,"add","","",8,null],[11,"add","ramp::int","",6,null],[11,"add","","",6,null],[11,"sub_assign","ramp::rational","",8,null],[11,"sub_assign","","",8,null],[11,"sub","","",8,null],[11,"sub","","",8,null],[11,"mul_assign","","",8,null],[11,"mul_assign","","",8,null],[11,"mul_assign","","",8,null],[11,"mul_assign","","",8,null],[11,"mul","","",8,null],[11,"mul","","",8,null],[11,"mul","","",8,null],[11,"mul","","",8,null],[11,"mul","ramp::int","",6,null],[11,"mul","","",6,null],[11,"div_assign","ramp::rational","",8,null],[11,"div_assign","","",8,null],[11,"div_assign","","",8,null],[11,"div_assign","","",8,null],[11,"div","","",8,null],[11,"div","","",8,null],[11,"div","","",8,null],[11,"div","","",8,null],[11,"div","ramp::int","",6,null],[11,"div","","",6,null],[11,"from","ramp::rational","",8,{"inputs":[{"name":"u"}],"output":{"name":"rational"}}],[11,"from","","",8,{"inputs":[{"name":"f32"}],"output":{"name":"rational"}}],[11,"from","","",8,{"inputs":[{"name":"f64"}],"output":{"name":"rational"}}],[11,"fmt","","",8,null],[11,"fmt","","",8,null]],"paths":[[3,"Limb"],[6,"BaseInt"],[3,"Limbs"],[3,"LimbsMut"],[8,"DivRem"],[8,"RandomInt"],[3,"Int"],[3,"ParseIntError"],[3,"Rational"]]}; initSearch(searchIndex);