var searchIndex = {}; searchIndex["peano"] = {"doc":"Peano numbers allow us to do arithmetic at compile time using Rust's type system.","items":[[3,"Zero","peano","The type corresponding to the Peano number 0.",null,null],[3,"Succ","","For any non-negative Peano number `N`, we define its successor, `Succ<N>`.",null,null],[3,"Pred","","For any non-positive Peano number `N`, we define its predecessor, `Pred<N>`.",null,null],[6,"P1","","The Peano number +1; `P1 = Succ<Zero>;`",null,null],[6,"P2","","The Peano number +2; `P2 = Succ<P1>;`",null,null],[6,"P3","","The Peano number +3; `P3 = Succ<P2>;`",null,null],[6,"P4","","The Peano number +4; `P4 = Succ<P3>;`",null,null],[6,"P5","","The Peano number +5; `P5 = Succ<P4>;`",null,null],[6,"P6","","The Peano number +6; `P6 = Succ<P5>;`",null,null],[6,"P7","","The Peano number +7; `P7 = Succ<P6>;`",null,null],[6,"P8","","The Peano number +8; `P8 = Succ<P7>;`",null,null],[6,"P9","","The Peano number +9; `P9 = Succ<P8>;`",null,null],[6,"N1","","The Peano number -1; `N1 = Pred<Zero>;`",null,null],[6,"N2","","The Peano number -2; `N2 = Pred<N1>;`",null,null],[6,"N3","","The Peano number -3; `N3 = Pred<N2>;`",null,null],[6,"N4","","The Peano number -4; `N4 = Pred<N3>;`",null,null],[6,"N5","","The Peano number -5; `N5 = Pred<N4>;`",null,null],[6,"N6","","The Peano number -6; `N6 = Pred<N5>;`",null,null],[6,"N7","","The Peano number -7; `N7 = Pred<N6>;`",null,null],[6,"N8","","The Peano number -8; `N8 = Pred<N7>;`",null,null],[6,"N9","","The Peano number -9; `N9 = Pred<N8>;`",null,null],[8,"Peano","","All numbers defined in this module belong to the **Peano** trait. It should not be\nimplemented for anything else.",null,null],[8,"NonZero","","Implemented for all Peano numbers of the form `Succ<M: NonNeg>` or `Pred<N: NonPos>`.",null,null],[8,"NonNeg","","Implemented for `Zero` and all numbers of the form `Succ<N: NonNeg>`.",null,null],[8,"NonPos","","Implemented for `Zero` and all numbers of the form `Pred<N: NonPos>`.",null,null],[8,"Same","","`Same` is used to ensure that two types are the same. Its `Output` should **always** be that type.",null,null],[16,"Output","","`Output` should always be `Self`",0,null],[8,"ToInt","","Convert a Peano number to the integer it represents.",null,null],[10,"to_int","","",1,{"inputs":[],"output":{"name":"i32"}}],[11,"clone","","",2,null],[11,"clone","","",3,null],[11,"clone","","",4,null],[11,"add","","",2,null],[11,"add","","",3,null],[11,"add","","",4,null],[11,"add","","",4,null],[11,"add","","",3,null],[11,"neg","","",2,null],[11,"neg","","",3,null],[11,"neg","","",4,null],[11,"sub","","",2,null],[11,"sub","","",3,null],[11,"sub","","",4,null],[11,"sub","","",3,null],[11,"sub","","",4,null],[11,"sub","","",3,null],[11,"sub","","",4,null],[11,"mul","","",2,null],[11,"mul","","",3,null],[11,"mul","","",4,null],[11,"div","","",2,null],[11,"div","","",3,null],[11,"div","","",4,null],[11,"to_int","","",2,{"inputs":[],"output":{"name":"i32"}}],[11,"to_int","","",3,{"inputs":[],"output":{"name":"i32"}}],[11,"to_int","","",4,{"inputs":[],"output":{"name":"i32"}}]],"paths":[[8,"Same"],[8,"ToInt"],[3,"Zero"],[3,"Succ"],[3,"Pred"]]}; initSearch(searchIndex);