searchIndex["qrcode"]={"doc":"QRCode encoder","items":[[3,"QrCode","qrcode","The encoded QR code symbol.",null,null],[0,"types","","",null,null],[4,"QrError","qrcode::types","`QrError` encodes the error encountered when generating a QR code.",null,null],[13,"DataTooLong","","The data is too long to encode into a QR code for the given version.",0,null],[13,"InvalidVersion","","The provided version / error correction level combination is invalid.",0,null],[13,"UnsupportedCharacterSet","","Some characters in the data cannot be supported by the provided QR code\nversion.",0,null],[13,"InvalidEciDesignator","","The provided ECI designator is invalid. A valid designator should be\nbetween 0 and 999999.",0,null],[13,"InvalidCharacter","","A character not belonging to the character set is found.",0,null],[4,"EcLevel","","The error correction level. It allows the original information be recovered\neven if parts of the code is damaged.",null,null],[13,"L","","Low error correction. Allows up to 7% of wrong blocks.",1,null],[13,"M","","Medium error correction (default). Allows up to 15% of wrong blocks.",1,null],[13,"Q","",""Quartile" error correction. Allows up to 25% of wrong blocks.",1,null],[13,"H","","High error correction. Allows up to 30% of wrong blocks.",1,null],[4,"Version","","In QR code terminology, `Version` means the size of the generated image.\nLarger version means the size of code is larger, and therefore can carry\nmore information.",null,null],[13,"Normal","","A normal QR code version. The parameter should be between 1 and 40.",2,null],[13,"Micro","","A Micro QR code version. The parameter should be between 1 and 4.",2,null],[4,"Mode","","The mode indicator, which specifies the character set of the encoded data.",null,null],[13,"Numeric","","The data contains only characters 0 to 9.",3,null],[13,"Alphanumeric","","The data contains only uppercase letters (A–Z), numbers (0–9) and a few\npunctuations marks (space, `$`, `%`, `*`, `+`, `-`, `.`, `/`, `:`).",3,null],[13,"Byte","","The data contains arbitrary binary data.",3,null],[13,"Kanji","","The data contains Shift-JIS-encoded double-byte text.",3,null],[6,"QrResult","","`QrResult` is a convenient alias for a QR code generation result.",null,null],[11,"clone","","",0,null],[11,"eq","","",0,null],[11,"fmt","","",0,null],[11,"fmt","","",0,null],[11,"cmp","","",1,null],[11,"partial_cmp","","",1,null],[11,"clone","","",1,null],[11,"eq","","",1,null],[11,"fmt","","",1,null],[11,"clone","","",2,null],[11,"eq","","",2,null],[11,"ne","","",2,null],[11,"fmt","","",2,null],[11,"width","","Get the number of "modules" on each size of the QR code, i.e. the width\nand height of the code.",2,null],[11,"fetch","","Obtains an object from a hard-coded table.",2,null],[11,"mode_bits_count","","The number of bits needed to encode the mode indicator.",2,null],[11,"is_micro","","Checks whether is version refers to a Micro QR code.",2,null],[11,"clone","","",3,null],[11,"eq","","",3,null],[11,"fmt","","",3,null],[11,"length_bits_count","","Computes the number of bits needed to encode the data length.",3,null],[11,"data_bits_count","","Computes the number of bits needed to some data of a given raw length.",3,null],[11,"max","","Find the lowest common mode which both modes are compatible with.",3,null],[11,"partial_cmp","","Defines a partial ordering between modes. If `a <= b`, then `b` contains\na superset of all characters supported by `a`.",3,null],[0,"bits","qrcode","The `bits` module encodes binary data into raw bits used in a QR code.",null,null],[3,"Bits","qrcode::bits","The `Bits` structure stores the encoded data for a QR code.",null,null],[4,"ExtendedMode","","An "extended" mode indicator, includes all indicators supported by QR code\nbeyond those bearing data.",null,null],[13,"Eci","","ECI mode indicator, to introduce an ECI designator.",4,null],[13,"Data","","The normal mode to introduce data.",4,null],[13,"Fnc1First","","FNC-1 mode in the first position.",4,null],[13,"Fnc1Second","","FNC-1 mode in the second position.",4,null],[13,"Struc
searchIndex["image"]={"doc":"This crate provides native rust implementations of\nimage encoders and decoders and basic image manipulation\nfunctions.","items":[[3,"Luma","image","Grayscale colors",null,null],[12,"data","","",0,null],[3,"LumaA","","Grayscale colors + alpha channel",null,null],[12,"data","","",1,null],[3,"Rgb","","RGB colors",null,null],[12,"data","","",2,null],[3,"Rgba","","RGB colors + alpha channel",null,null],[12,"data","","",3,null],[3,"SubImage","","A View into another image",null,null],[3,"Pixels","","Immutable pixel iterator",null,null],[3,"MutPixels","","Mutable pixel iterator",null,null],[3,"ImageBuffer","","Generic image buffer",null,null],[3,"Frame","","A single animation frame",null,null],[3,"Frames","","Holds the frames of the animated image",null,null],[4,"ColorType","","An enumeration over supported color types and their bit depths",null,null],[13,"Gray","","Pixel is grayscale",4,null],[13,"RGB","","Pixel contains R, G and B channels",4,null],[13,"Palette","","Pixel is an index into a color palette",4,null],[13,"GrayA","","Pixel is grayscale with an alpha channel",4,null],[13,"RGBA","","Pixel is RGB with an alpha channel",4,null],[4,"ImageError","","An enumeration of Image errors",null,null],[13,"FormatError","","The Image is not formatted properly",5,null],[13,"DimensionError","","The Image's dimensions are either too small or too large",5,null],[13,"UnsupportedError","","The Decoder does not support this image format",5,null],[13,"UnsupportedColor","","The Decoder does not support this color type",5,null],[13,"NotEnoughData","","Not enough data was provided to the Decoder\nto decode the image",5,null],[13,"IoError","","An I/O Error occurred while decoding the image",5,null],[13,"ImageEnd","","The end of the image has been reached",5,null],[4,"FilterType","","Available Sampling Filters",null,null],[13,"Nearest","","Nearest Neighbor",6,null],[13,"Triangle","","Linear Filter",6,null],[13,"CatmullRom","","Cubic Filter",6,null],[13,"Gaussian","","Gaussian Filter",6,null],[13,"Lanczos3","","Lanczos with window 3",6,null],[4,"ImageFormat","","An enumeration of supported image formats.\nNot all formats support both encoding and decoding.",null,null],[13,"PNG","","An Image in PNG Format",7,null],[13,"JPEG","","An Image in JPEG Format",7,null],[13,"GIF","","An Image in GIF Format",7,null],[13,"WEBP","","An Image in WEBP Format",7,null],[13,"PPM","","An Image in PPM Format",7,null],[13,"TIFF","","An Image in TIFF Format",7,null],[13,"TGA","","An Image in TGA Format",7,null],[13,"BMP","","An Image in BMP Format",7,null],[13,"ICO","","An Image in ICO Format",7,null],[4,"DynamicImage","","A Dynamic Image",null,null],[13,"ImageLuma8","","Each pixel in this image is 8-bit Luma",8,null],[13,"ImageLumaA8","","Each pixel in this image is 8-bit Luma with alpha",8,null],[13,"ImageRgb8","","Each pixel in this image is 8-bit Rgb",8,null],[13,"ImageRgba8","","Each pixel in this image is 8-bit Rgb with alpha",8,null],[5,"open","","Open the image located at the path specified.\nThe image's format is determined from the path's file extension.",null,{"inputs":[{"name":"p"}],"output":{"name":"imageresult"}}],[5,"load","","Create a new image from a Reader",null,{"inputs":[{"name":"r"},{"name":"imageformat"}],"output":{"name":"imageresult"}}],[5,"load_from_memory","","Create a new image from a byte slice",null,null],[5,"load_from_memory_with_format","","Create a new image from a byte slice",null,null],[5,"save_buffer","","Saves the supplied buffer to a file at the path specified.",null,null],[0,"math","","Mathematical helper functions and types.",null,null],[0,"utils","image::math","Shared mathematical utility functions.",null,null],[5,"clamp","image::math::utils","Cut value to be inside given range",null,{"inputs":[{"name":"n"},{"name":"n"},{"name":"n"}],"output":{"name":"n"}}],[0,"nq","image::math","NEUQUANTNeural-NetquantizationalgorithmbyAnthonyDekker,1994.\nSee"Kohonenneuralnetworksforoptimalcolourquantization"\nin"Network:ComputationinNeuralSystems"Vol.5(19
searchIndex["num_rational"]={"doc":"Rational numbers","items":[[3,"Ratio","num_rational","Represents the ratio between 2 numbers.",null,null],[3,"ParseRatioError","","",null,null],[6,"Rational","","Alias for a `Ratio` of machine-sized integers.",null,null],[6,"Rational32","","",null,null],[6,"Rational64","","",null,null],[6,"BigRational","","Alias for arbitrary precision rationals.",null,null],[11,"fmt","","",0,null],[11,"hash","","",0,null],[11,"clone","","",0,null],[11,"decode","","",0,{"inputs":[{"name":"__dt"}],"output":{"name":"result"}}],[11,"encode","","",0,null],[11,"from_integer","","Creates a ratio representing the integer `t`.",0,{"inputs":[{"name":"t"}],"output":{"name":"ratio"}}],[11,"new_raw","","Creates a ratio without checking for `denom == 0` or reducing.",0,{"inputs":[{"name":"t"},{"name":"t"}],"output":{"name":"ratio"}}],[11,"new","","Create a new Ratio. Fails if `denom == 0`.",0,{"inputs":[{"name":"t"},{"name":"t"}],"output":{"name":"ratio"}}],[11,"to_integer","","Converts to an integer.",0,null],[11,"numer","","Gets an immutable reference to the numerator.",0,null],[11,"denom","","Gets an immutable reference to the denominator.",0,null],[11,"is_integer","","Returns true if the rational number is an integer (denominator is 1).",0,null],[11,"reduced","","Returns a `reduce`d copy of self.",0,null],[11,"recip","","Returns the reciprocal.",0,null],[11,"floor","","Rounds towards minus infinity.",0,null],[11,"ceil","","Rounds towards plus infinity.",0,null],[11,"round","","Rounds to the nearest integer. Rounds half-way cases away from zero.",0,null],[11,"trunc","","Rounds towards zero.",0,null],[11,"fract","","Returns the fractional part of a number.",0,null],[11,"pow","","Raises the ratio to the power of an exponent",0,null],[11,"from_float","","Converts a float into a rational number.",0,{"inputs":[{"name":"t"}],"output":{"name":"option"}}],[11,"cmp","","",0,null],[11,"partial_cmp","","",0,null],[11,"eq","","",0,null],[11,"mul","","",0,null],[11,"mul","","",0,null],[11,"div","","",0,null],[11,"div","","",0,null],[11,"add","","",0,null],[11,"add","","",0,null],[11,"sub","","",0,null],[11,"sub","","",0,null],[11,"rem","","",0,null],[11,"rem","","",0,null],[11,"neg","","",0,null],[11,"zero","","",0,{"inputs":[],"output":{"name":"ratio"}}],[11,"is_zero","","",0,null],[11,"one","","",0,{"inputs":[],"output":{"name":"ratio"}}],[11,"from_str_radix","","Parses `numer/denom` where the numbers are in base `radix`.",0,{"inputs":[{"name":"str"},{"name":"u32"}],"output":{"name":"result"}}],[11,"abs","","",0,null],[11,"abs_sub","","",0,null],[11,"signum","","",0,null],[11,"is_positive","","",0,null],[11,"is_negative","","",0,null],[11,"fmt","","Renders as `numer/denom`. If denom=1, renders as numer.",0,null],[11,"from_str","","Parses `numer/denom` or just `numer`.",0,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[11,"eq","","",1,null],[11,"ne","","",1,null],[11,"fmt","","",1,null],[11,"clone","","",1,null],[11,"fmt","","",1,null],[11,"description","","",1,null]],"paths":[[3,"Ratio"],[3,"ParseRatioError"]]};
searchIndex["png"]={"doc":"# PNG encoder and decoder\nThis crate contains a PNG decoder. It supports reading of single lines or whole frames.\n## The decoder\nThe most important types for decoding purposes are [`Decoder`](struct.Decoder.html) and\n[`Reader`](struct.Reader.html). They both wrap a `std::io::Read`.\n`Decoder` serves as a builder for `Reader`. Calling `Decoder::read_info` reads from the `Read` until the\nimage data is reached.\n### Using the decoder\n use std::fs::File;","items":[[3,"FrameControl","png","Frame control information",null,null],[12,"sequence_number","","Sequence number of the animation chunk, starting from 0",0,null],[12,"width","","Width of the following frame",0,null],[12,"height","","Height of the following frame",0,null],[12,"x_offset","","X position at which to render the following frame",0,null],[12,"y_offset","","Y position at which to render the following frame",0,null],[12,"delay_num","","Frame delay fraction numerator",0,null],[12,"delay_den","","Frame delay fraction denominator",0,null],[12,"dispose_op","","Type of frame area disposal to be done after rendering this frame",0,null],[12,"blend_op","","Type of frame area rendering for this frame",0,null],[3,"AnimationControl","","Animation control information",null,null],[12,"num_frames","","Number of frames",1,null],[12,"num_plays","","Number of times to loop this APNG. 0 indicates infinite looping.",1,null],[3,"Info","","PNG info struct",null,null],[12,"width","","",2,null],[12,"height","","",2,null],[12,"bit_depth","","",2,null],[12,"color_type","","",2,null],[12,"interlaced","","",2,null],[12,"trns","","",2,null],[12,"palette","","",2,null],[12,"frame_control","","",2,null],[12,"animation_control","","",2,null],[3,"Transformations","","# Output transformations",null,null],[3,"Decoder","","PNG Decoder",null,null],[3,"Reader","","PNG reader (mostly high-level interface)",null,null],[3,"OutputInfo","","Output info",null,null],[12,"width","","",3,null],[12,"height","","",3,null],[12,"color_type","","",3,null],[12,"bit_depth","","",3,null],[12,"line_size","","",3,null],[3,"StreamingDecoder","","PNG StreamingDecoder (low-level interface)",null,null],[3,"Encoder","","",null,null],[3,"Writer","","",null,null],[4,"ColorType","","",null,null],[13,"Grayscale","","",4,null],[13,"RGB","","",4,null],[13,"Indexed","","",4,null],[13,"GrayscaleAlpha","","",4,null],[13,"RGBA","","",4,null],[4,"BitDepth","","Bit depth of the png file",null,null],[13,"One","","",5,null],[13,"Two","","",5,null],[13,"Four","","",5,null],[13,"Eight","","",5,null],[13,"Sixteen","","",5,null],[4,"Decoded","","Result of the decoding process",null,null],[13,"Nothing","","Nothing decoded yet",6,null],[13,"Header","","",6,null],[13,"ChunkBegin","","",6,null],[13,"ChunkComplete","","",6,null],[13,"AnimationControl","","",6,null],[13,"FrameControl","","",6,null],[13,"ImageData","","Decoded raw image data.",6,null],[13,"PartialChunk","","",6,null],[13,"ImageEnd","","",6,null],[4,"DecodingError","","",null,null],[13,"IoError","","",7,null],[13,"Format","","",7,null],[13,"InvalidSignature","","",7,null],[13,"CrcMismatch","","",7,null],[12,"recover","png::DecodingError","bytes to skip to try to recover from this error",7,null],[12,"crc_val","","Stored CRC32 value",7,null],[12,"crc_sum","","Calculated CRC32 sum",7,null],[12,"chunk","","",7,null],[13,"Other","png","",7,null],[13,"CorruptFlateStream","","",7,null],[4,"EncodingError","","",null,null],[13,"IoError","","",8,null],[13,"Format","","",8,null],[0,"chunk","","Chunk types and functions",null,null],[5,"is_critical","png::chunk","Returns true if the chunk is critical.",null,{"inputs":[{"name":"chunktype"}],"output":{"name":"bool"}}],[5,"is_private","","Returns true if the chunk is private.",null,{"inputs":[{"name":"chunktype"}],"output":{"name":"bool"}}],[5,"reserved_set","","Checks whether the reserved bit of the chunk name is set.\nIf it is set the chunk name is invalid.",null,{"inputs":[{"name":"chunktype"}],"output":{"name":"bool"}}],[5,"save_to_copy","","Returns true if the chunk is safe to copy if unknown.",null,{"inp
searchIndex["num_bigint"]={"doc":"A Big integer (signed version: `BigInt`, unsigned version: `BigUint`).","items":[[3,"BigUint","num_bigint","A big unsigned integer type.",null,null],[3,"BigInt","","A big signed integer type.",null,null],[4,"Sign","","A Sign is a `BigInt`'s composing element.",null,null],[13,"Minus","","",0,null],[13,"NoSign","","",0,null],[13,"Plus","","",0,null],[4,"ParseBigIntError","","",null,null],[13,"ParseInt","","",1,null],[13,"Other","","",1,null],[0,"big_digit","","",null,null],[5,"from_doublebigdigit","num_bigint::big_digit","Split one `DoubleBigDigit` into two `BigDigit`s.",null,null],[5,"to_doublebigdigit","","Join two `BigDigit`s into one `DoubleBigDigit`",null,{"inputs":[{"name":"bigdigit"},{"name":"bigdigit"}],"output":{"name":"doublebigdigit"}}],[17,"BITS","","",null,null],[17,"BASE","","",null,null],[6,"BigDigit","num_bigint","A `BigDigit` is a `BigUint`'s composing element.",null,null],[6,"DoubleBigDigit","","A `DoubleBigDigit` is the internal type used to do the computations. Its\nsize is the double of the size of `BigDigit`.",null,null],[17,"ZERO_BIG_DIGIT","","",null,null],[8,"ToBigUint","","A generic trait for converting a value to a `BigUint`.",null,null],[10,"to_biguint","","Converts the value of `self` to a `BigUint`.",2,null],[8,"ToBigInt","","A generic trait for converting a value to a `BigInt`.",null,null],[10,"to_bigint","","Converts the value of `self` to a `BigInt`.",3,null],[8,"RandBigInt","","",null,null],[10,"gen_biguint","","Generate a random `BigUint` of the given bit size.",4,null],[10,"gen_bigint","","Generate a random BigInt of the given bit size.",4,null],[10,"gen_biguint_below","","Generate a random `BigUint` less than the given bound. Fails\nwhen the bound is zero.",4,null],[10,"gen_biguint_range","","Generate a random `BigUint` within the given range. The lower\nbound is inclusive; the upper bound is exclusive. Fails when\nthe upper bound is not greater than the lower bound.",4,null],[10,"gen_bigint_range","","Generate a random `BigInt` within the given range. The lower\nbound is inclusive; the upper bound is exclusive. Fails when\nthe upper bound is not greater than the lower bound.",4,null],[11,"hash","","",5,null],[11,"fmt","","",5,null],[11,"clone","","",5,null],[11,"decode","","",5,{"inputs":[{"name":"__d"}],"output":{"name":"result"}}],[11,"encode","","",5,null],[11,"eq","","",5,null],[11,"partial_cmp","","",5,null],[11,"cmp","","",5,null],[11,"default","","",5,{"inputs":[],"output":{"name":"biguint"}}],[11,"fmt","","",5,null],[11,"fmt","","",5,null],[11,"fmt","","",5,null],[11,"fmt","","",5,null],[11,"fmt","","",5,null],[11,"from_str","","",5,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[11,"from_str_radix","","Creates and initializes a `BigUint`.",5,{"inputs":[{"name":"str"},{"name":"u32"}],"output":{"name":"result"}}],[11,"bitand","","",5,null],[11,"bitand","","",5,null],[11,"bitor","","",5,null],[11,"bitor","","",5,null],[11,"bitxor","","",5,null],[11,"bitxor","","",5,null],[11,"shl","","",5,null],[11,"shr","","",5,null],[11,"zero","","",5,{"inputs":[],"output":{"name":"biguint"}}],[11,"is_zero","","",5,null],[11,"one","","",5,{"inputs":[],"output":{"name":"biguint"}}],[11,"add","","",5,null],[11,"add","","",5,null],[11,"sub","","",5,null],[11,"sub","","",5,null],[11,"mul","","",5,null],[11,"mul","","",5,null],[11,"div","","",5,null],[11,"div","","",5,null],[11,"rem","","",5,null],[11,"rem","","",5,null],[11,"neg","","",5,null],[11,"checked_add","","",5,null],[11,"checked_sub","","",5,null],[11,"checked_mul","","",5,null],[11,"checked_div","","",5,null],[11,"div_rem","","",5,null],[11,"div_floor","","",5,null],[11,"mod_floor","","",5,null],[11,"div_mod_floor","","",5,null],[11,"gcd","","Calculates the Greatest Common Divisor (GCD) of the number and `other`.",5,null],[11,"lcm","","Calculates the Lowest Common Multiple (LCM) of the number and `other`.",5,null],[11,"divides","","Deprecated, use `is_multiple_of` instead.",5,null],[11,"is_multiple_of","","Returns `true` if the number is a multiple of `other`.",5,null],[11,"is_even","
searchIndex["euclid"]={"doc":"","items":[[0,"approxeq","euclid","",null,null],[8,"ApproxEq","euclid::approxeq","Trait for testing approximate equality",null,null],[10,"approx_epsilon","","",0,{"inputs":[],"output":{"name":"eps"}}],[10,"approx_eq","","",0,null],[10,"approx_eq_eps","","",0,null],[0,"length","euclid","A one-dimensional length, tagged with its units.",null,null],[3,"Length","euclid::length","A one-dimensional distance, with value represented by `T` and unit of measurement `Unit`.",null,null],[12,"0","","",1,null],[11,"fmt","","",1,null],[11,"encode","","",1,null],[11,"decode","","",1,{"inputs":[{"name":"__dunitt"}],"output":{"name":"result"}}],[11,"new","","",1,{"inputs":[{"name":"t"}],"output":{"name":"length"}}],[11,"get","","",1,null],[11,"add","","",1,null],[11,"sub","","",1,null],[11,"div","","",1,null],[11,"mul","","",1,null],[11,"div","","",1,null],[11,"neg","","",1,null],[11,"cast","","Cast from one numeric representation to another, preserving the units.",1,null],[11,"clone","","",1,null],[11,"eq","","",1,null],[11,"partial_cmp","","",1,null],[11,"cmp","","",1,null],[11,"zero","","",1,{"inputs":[],"output":{"name":"length"}}],[0,"matrix","euclid","",null,null],[6,"Matrix4","euclid::matrix","",null,null],[0,"matrix2d","euclid","",null,null],[3,"Matrix2D","euclid::matrix2d","",null,null],[11,"clone","","",2,null],[11,"new","","",2,{"inputs":[{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"}],"output":{"name":"matrix2d"}}],[11,"mul","","",2,null],[11,"translate","","",2,null],[11,"scale","","",2,null],[11,"identity","","",2,{"inputs":[],"output":{"name":"matrix2d"}}],[11,"to_array","","",2,null],[11,"transform_point","","Returns the given point transformed by this matrix.",2,null],[11,"transform_rect","","Returns a rectangle that encompasses the result of transforming the given rectangle by this\nmatrix.",2,null],[0,"matrix4d","euclid","",null,null],[3,"Matrix4D","euclid::matrix4d","",null,null],[12,"m11","","",3,null],[12,"m12","","",3,null],[12,"m13","","",3,null],[12,"m14","","",3,null],[12,"m21","","",3,null],[12,"m22","","",3,null],[12,"m23","","",3,null],[12,"m24","","",3,null],[12,"m31","","",3,null],[12,"m32","","",3,null],[12,"m33","","",3,null],[12,"m34","","",3,null],[12,"m41","","",3,null],[12,"m42","","",3,null],[12,"m43","","",3,null],[12,"m44","","",3,null],[11,"eq","","",3,null],[11,"ne","","",3,null],[11,"clone","","",3,null],[11,"fmt","","",3,null],[11,"new","","",3,{"inputs":[{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"}],"output":{"name":"matrix4d"}}],[11,"new_2d","","",3,{"inputs":[{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"}],"output":{"name":"matrix4d"}}],[11,"ortho","","",3,{"inputs":[{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"}],"output":{"name":"matrix4d"}}],[11,"identity","","",3,{"inputs":[],"output":{"name":"matrix4d"}}],[11,"is_2d","","",3,null],[11,"approx_eq","","",3,null],[11,"mul","","",3,null],[11,"invert","","",3,null],[11,"determinant","","",3,null],[11,"mul_s","","",3,null],[11,"scale","","",3,null],[11,"transform_point","","Returns the given point transformed by this matrix.",3,null],[11,"transform_point4d","","",3,null],[11,"to_array","","",3,null],[11,"translate","","",3,null],[11,"create_translation","","Create a 3d translation matrix",3,{"inputs":[{"name":"t"},{"name":"t"},{"name":"t"}],"output":{"name":"matrix4d"}}],[11,"create_scale","","Create a 3d scale matrix",3,{"inputs":[{"name":"t"},{"name":"t"},{"name":"t"}],"output":{"name":"matrix4d"}}],[11,"create_rotation","","Create a 3d rotation matrix from an angle / axis.\nThe supplied axis must be normalized.",3,{"inputs":[{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"}],"output":{"name":"matrix4d"}}],[11,"create_skew","","Create a 2d skew matrix.\nhttps://drafts.csswg.org/css-transforms/#funcdef-skew",3,{"inputs":[{"name":"t"},{"name":"t"}],"output":
searchIndex["rayon"]={"doc":"","items":[[3,"Configuration","rayon","Contains the rayon thread pool configuration.",null,null],[3,"ThreadPool","","",null,null],[4,"InitError","","Custom error type for the rayon thread pool configuration.",null,null],[13,"NumberOfThreadsZero","","Error if number of threads is set to zero.",0,null],[13,"GlobalPoolAlreadyInitialized","","Error if the gloal thread pool is initialized multiple times\nand the configuration is not equal for all configurations.",0,null],[5,"dump_stats","","This is a debugging API not really intended for end users. It will\ndump some performance statistics out using `println`.",null,{"inputs":[],"output":null}],[5,"initialize","","Initializes the global thread pool. This initialization is\n**optional**. If you do not call this function, the thread pool\nwill be automatically initialized with the default\nconfiguration. In fact, calling `initialize` is not recommended,\nexcept for in two scenarios:",null,{"inputs":[{"name":"configuration"}],"output":{"name":"result"}}],[5,"join","","",null,null],[11,"eq","","",0,null],[11,"fmt","","",0,null],[11,"fmt","","",0,null],[11,"description","","",0,null],[11,"fmt","","",1,null],[11,"clone","","",1,null],[11,"new","","Creates and return a valid rayon thread pool configuration, but does not initialize it.",1,{"inputs":[],"output":{"name":"configuration"}}],[11,"num_threads","","Get the number of threads that will be used for the thread\npool. See `set_num_threads` for more information.",1,null],[11,"set_num_threads","","Set the number of threads to be used in the rayon threadpool.\nThe argument `num_threads` must not be zero. If you do not\ncall this function, rayon will select a suitable default\n(currently, the default is one thread per CPU core).",1,null],[11,"new","","Constructs a new thread pool with the given configuration. If\nthe configuration is not valid, returns a suitable `Err`\nresult. See `InitError` for more details.",2,{"inputs":[{"name":"configuration"}],"output":{"name":"result"}}],[11,"install","","Executes `op` within the threadpool. Any attempts to `join`\nwhich occur there will then operate within that threadpool.",2,null],[11,"drop","","",2,null],[0,"par_iter","","The `ParallelIterator` module makes it easy to write parallel\nprograms using an iterator-style interface. To get access to all\nthe methods you want, the easiest is to write `use\nrayon::prelude::*;` at the top of your module, which will import\nthe various traits and methods you need.",null,null],[0,"collect","rayon::par_iter","",null,null],[5,"collect_into","rayon::par_iter::collect","",null,{"inputs":[{"name":"par_iter"},{"name":"vec"}],"output":null}],[0,"enumerate","rayon::par_iter","",null,null],[3,"Enumerate","rayon::par_iter::enumerate","",null,null],[3,"EnumerateProducer","","",null,null],[11,"new","","",3,{"inputs":[{"name":"m"}],"output":{"name":"enumerate"}}],[11,"drive_unindexed","","",3,null],[11,"upper_bound","","",3,null],[11,"drive","","",3,null],[11,"len","","",3,null],[11,"with_producer","","",3,null],[11,"cost","","",4,null],[11,"split_at","","",4,null],[11,"into_iter","","",4,null],[0,"filter","rayon::par_iter","",null,null],[3,"Filter","rayon::par_iter::filter","",null,null],[11,"new","","",5,{"inputs":[{"name":"m"},{"name":"filter_op"}],"output":{"name":"filter"}}],[11,"drive_unindexed","","",5,null],[11,"upper_bound","","",5,null],[11,"drive","","",5,null],[0,"filter_map","rayon::par_iter","",null,null],[3,"FilterMap","rayon::par_iter::filter_map","",null,null],[11,"new","","",6,{"inputs":[{"name":"m"},{"name":"filter_op"}],"output":{"name":"filtermap"}}],[11,"drive_unindexed","","",6,null],[11,"upper_bound","","",6,null],[11,"drive","","",6,null],[0,"flat_map","rayon::par_iter","",null,null],[3,"FlatMap","rayon::par_iter::flat_map","",null,null],[11,"new","","",7,{"inputs":[{"name":"m"},{"name":"map_op"}],"output":{"name":"flatmap"}}],[11,"drive_unindexed","","",7,null],[0,"internal","rayon::par_iter","Internaltraitsandfunctionsusedtoimplementparallel\niteration.Theseshouldbeconsideredhighlyunstable
searchIndex["rustc_serialize"]={"doc":"Support code for encoding and decoding types.","items":[[11,"encode","collections::string","",0,null],[11,"decode","","",0,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"encode","alloc::boxed","",1,null],[11,"decode","","",1,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"decode","","",1,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"encode","alloc::rc","",2,null],[11,"decode","","",2,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"encode","collections::borrow","",3,null],[11,"decode","","",3,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"encode","collections::vec","",4,null],[11,"decode","","",4,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"encode","core::option","",5,null],[11,"decode","","",5,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"encode","core::marker","",6,null],[11,"decode","","",6,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"encode","std::path","",7,null],[11,"encode","","",8,null],[11,"decode","","",8,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"encode","core::cell","",9,null],[11,"decode","","",9,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"encode","","",10,null],[11,"decode","","",10,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"encode","alloc::arc","",11,null],[11,"decode","","",11,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"encode","collections::linked_list","",12,null],[11,"decode","","",12,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"encode","collections::vec_deque","",13,null],[11,"decode","","",13,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"encode","collections::btree::map","",14,null],[11,"decode","","",14,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"encode","collections::btree::set","",15,null],[11,"decode","","",15,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"encode","std::collections::hash::map","",16,null],[11,"decode","","",16,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[11,"encode","std::collections::hash::set","",17,null],[11,"decode","","",17,{"inputs":[{"name":"d"}],"output":{"name":"result"}}],[0,"base64","rustc_serialize","Base64 binary-to-text encoding",null,null],[3,"Config","rustc_serialize::base64","Contains configuration parameters for `to_base64`.",null,null],[12,"char_set","","Character set to use",18,null],[12,"newline","","Newline to use",18,null],[12,"pad","","True to pad output with `=` characters",18,null],[12,"line_length","","`Some(len)` to wrap lines at `len`, `None` to disable line wrapping",18,null],[4,"CharacterSet","","Available encoding character sets",null,null],[13,"Standard","","The standard character set (uses `+` and `/`)",19,null],[13,"UrlSafe","","The URL safe character set (uses `-` and `_`)",19,null],[4,"Newline","","Available newline types",null,null],[13,"LF","","A linefeed (i.e. Unix-style newline)",20,null],[13,"CRLF","","A carriage return and a linefeed (i.e. Windows-style newline)",20,null],[4,"FromBase64Error","","Errors that can occur when decoding a base64 encoded string",null,null],[13,"InvalidBase64Byte","","The input contained a character not part of the base64 format",21,null],[13,"InvalidBase64Length","","The input had an invalid length",21,null],[7,"STANDARD","","Configuration for RFC 4648 standard base64 encoding",null,null],[7,"URL_SAFE","","Configuration for RFC 4648 base64url encoding",null,null],[7,"MIME","","Configuration for RFC 2045 MIME base64 encoding",null,null],[8,"ToBase64","","A trait for converting a value to base64 encoding.",null,null],[10,"to_base64","","Converts the value of `self` to a base64 value following the specified\nformat configuration, returning the owned string.",22,null],[8,"FromBase64","","A trait for converting from base64 encoded values.",null,null],[10,"from_base64","","Converts the value of `self`, interpreted as base64 encoded data, into\nan owned vector of bytes, returning the vector.",23,null],[11,"fmt","","",19,null],[11,"clone","","",19,null],[1
searchIndex["bitflags"]={"doc":"A typesafe bitmask flag generator.","items":[[0,"isize","bitflags::__core","The pointer-sized signed integer type.",null,null],[17,"MIN","bitflags::__core::isize","",null,null],[17,"MAX","","",null,null],[0,"i8","bitflags::__core","The 8-bit signed integer type.",null,null],[17,"MIN","bitflags::__core::i8","",null,null],[17,"MAX","","",null,null],[0,"i16","bitflags::__core","The 16-bit signed integer type.",null,null],[17,"MIN","bitflags::__core::i16","",null,null],[17,"MAX","","",null,null],[0,"i32","bitflags::__core","The 32-bit signed integer type.",null,null],[17,"MIN","bitflags::__core::i32","",null,null],[17,"MAX","","",null,null],[0,"i64","bitflags::__core","The 64-bit signed integer type.",null,null],[17,"MIN","bitflags::__core::i64","",null,null],[17,"MAX","","",null,null],[0,"usize","bitflags::__core","The pointer-sized unsigned integer type.",null,null],[17,"MIN","bitflags::__core::usize","",null,null],[17,"MAX","","",null,null],[0,"u8","bitflags::__core","The 8-bit unsigned integer type.",null,null],[17,"MIN","bitflags::__core::u8","",null,null],[17,"MAX","","",null,null],[0,"u16","bitflags::__core","The 16-bit unsigned integer type.",null,null],[17,"MIN","bitflags::__core::u16","",null,null],[17,"MAX","","",null,null],[0,"u32","bitflags::__core","The 32-bit unsigned integer type.",null,null],[17,"MIN","bitflags::__core::u32","",null,null],[17,"MAX","","",null,null],[0,"u64","bitflags::__core","The 64-bit unsigned integer type.",null,null],[17,"MIN","bitflags::__core::u64","",null,null],[17,"MAX","","",null,null],[0,"f32","bitflags::__core","Operations and constants for 32-bits floats (`f32` type)",null,null],[17,"RADIX","bitflags::__core::f32","",null,null],[17,"MANTISSA_DIGITS","","",null,null],[17,"DIGITS","","",null,null],[17,"EPSILON","","",null,null],[17,"MIN","","Smallest finite f32 value",null,null],[17,"MIN_POSITIVE","","Smallest positive, normalized f32 value",null,null],[17,"MAX","","Largest finite f32 value",null,null],[17,"MIN_EXP","","",null,null],[17,"MAX_EXP","","",null,null],[17,"MIN_10_EXP","","",null,null],[17,"MAX_10_EXP","","",null,null],[17,"NAN","","",null,null],[17,"INFINITY","","",null,null],[17,"NEG_INFINITY","","",null,null],[0,"consts","","Basic mathematical constants.",null,null],[17,"PI","bitflags::__core::f32::consts","Archimedes' constant",null,null],[17,"FRAC_PI_2","","pi/2.0",null,null],[17,"FRAC_PI_3","","pi/3.0",null,null],[17,"FRAC_PI_4","","pi/4.0",null,null],[17,"FRAC_PI_6","","pi/6.0",null,null],[17,"FRAC_PI_8","","pi/8.0",null,null],[17,"FRAC_1_PI","","1.0/pi",null,null],[17,"FRAC_2_PI","","2.0/pi",null,null],[17,"FRAC_2_SQRT_PI","","2.0/sqrt(pi)",null,null],[17,"SQRT_2","","sqrt(2.0)",null,null],[17,"FRAC_1_SQRT_2","","1.0/sqrt(2.0)",null,null],[17,"E","","Euler's number",null,null],[17,"LOG2_E","","log2(e)",null,null],[17,"LOG10_E","","log10(e)",null,null],[17,"LN_2","","ln(2.0)",null,null],[17,"LN_10","","ln(10.0)",null,null],[0,"f64","bitflags::__core","Operations and constants for 64-bits floats (`f64` type)",null,null],[17,"RADIX","bitflags::__core::f64","",null,null],[17,"MANTISSA_DIGITS","","",null,null],[17,"DIGITS","","",null,null],[17,"EPSILON","","",null,null],[17,"MIN","","Smallest finite f64 value",null,null],[17,"MIN_POSITIVE","","Smallest positive, normalized f64 value",null,null],[17,"MAX","","Largest finite f64 value",null,null],[17,"MIN_EXP","","",null,null],[17,"MAX_EXP","","",null,null],[17,"MIN_10_EXP","","",null,null],[17,"MAX_10_EXP","","",null,null],[17,"NAN","","",null,null],[17,"INFINITY","","",null,null],[17,"NEG_INFINITY","","",null,null],[0,"consts","","Basic mathematical constants.",null,null],[17,"PI","bitflags::__core::f64::consts","Archimedes' constant",null,null],[17,"FRAC_PI_2","","pi/2.0",null,null],[17,"FRAC_PI_3","","pi/3.0",null,null],[17,"FRAC_PI_4","","pi/4.0",null,null],[17,"FRAC_PI_6","","pi/6.0",null,null],[17,"FRAC_PI_8","","pi/8.0",null,null],[17,"FRAC_1_PI","","1.0/pi",null,null],[17,"FRAC_2_PI","","2.0/pi",null,null],[17,"FRAC_2_SQRT_PI","","2.0/sqrt(pi)",null,null],[17,"SQR
searchIndex["enum_primitive"]={"doc":"This crate exports a macro `enum_from_primitive!` that wraps an\n`enum` declaration and automatically adds an implementation of\n`num::FromPrimitive` (reexported here), to allow conversion from\nprimitive integers to the enum. It therefore provides an\nalternative to the built-in `#[derive(FromPrimitive)]`, which\nrequires the unstable `std::num::FromPrimitive` and is disabled in\nRust 1.0.","items":[[11,"is_some","core::option","Returns `true` if the option is a `Some` value",0,null],[11,"is_none","","Returns `true` if the option is a `None` value",0,null],[11,"as_ref","","Converts from `Option<T>` to `Option<&T>`",0,null],[11,"as_mut","","Converts from `Option<T>` to `Option<&mut T>`",0,null],[11,"expect","","Unwraps an option, yielding the content of a `Some`.",0,null],[11,"unwrap","","Moves the value `v` out of the `Option<T>` if it is `Some(v)`.",0,null],[11,"unwrap_or","","Returns the contained value or a default.",0,null],[11,"unwrap_or_else","","Returns the contained value or computes it from a closure.",0,null],[11,"map","","Maps an `Option<T>` to `Option<U>` by applying a function to a contained value",0,null],[11,"map_or","","Applies a function to the contained value (if any),\nor returns a `default` (if not).",0,null],[11,"map_or_else","","Applies a function to the contained value (if any),\nor computes a `default` (if not).",0,null],[11,"ok_or","","Transforms the `Option<T>` into a `Result<T, E>`, mapping `Some(v)` to\n`Ok(v)` and `None` to `Err(err)`.",0,null],[11,"ok_or_else","","Transforms the `Option<T>` into a `Result<T, E>`, mapping `Some(v)` to\n`Ok(v)` and `None` to `Err(err())`.",0,null],[11,"iter","","Returns an iterator over the possibly contained value.",0,null],[11,"iter_mut","","Returns a mutable iterator over the possibly contained value.",0,null],[11,"and","","Returns `None` if the option is `None`, otherwise returns `optb`.",0,null],[11,"and_then","","Returns `None` if the option is `None`, otherwise calls `f` with the\nwrapped value and returns the result.",0,null],[11,"or","","Returns the option if it contains a value, otherwise returns `optb`.",0,null],[11,"or_else","","Returns the option if it contains a value, otherwise calls `f` and\nreturns the result.",0,null],[11,"take","","Takes the value out of the option, leaving a `None` in its place.",0,null],[11,"cloned","","Maps an `Option<&T>` to an `Option<T>` by cloning the contents of the\noption.",0,null],[11,"unwrap_or_default","","Returns the contained value or a default",0,null],[11,"hash","core::num","",1,null],[11,"default","","",1,{"inputs":[],"output":{"name":"wrapping"}}],[11,"clone","","",1,null],[11,"cmp","","",1,null],[11,"partial_cmp","","",1,null],[11,"lt","","",1,null],[11,"le","","",1,null],[11,"gt","","",1,null],[11,"ge","","",1,null],[11,"eq","","",1,null],[11,"ne","","",1,null],[11,"fmt","","",1,null],[11,"fmt","","",1,null],[11,"shl","","",1,null],[11,"shl_assign","","",1,null],[11,"shr","","",1,null],[11,"shr_assign","","",1,null],[11,"shl","","",1,null],[11,"shl_assign","","",1,null],[11,"shr","","",1,null],[11,"shr_assign","","",1,null],[11,"shl","","",1,null],[11,"shl_assign","","",1,null],[11,"shr","","",1,null],[11,"shr_assign","","",1,null],[11,"shl","","",1,null],[11,"shl_assign","","",1,null],[11,"shr","","",1,null],[11,"shr_assign","","",1,null],[11,"shl","","",1,null],[11,"shl_assign","","",1,null],[11,"shr","","",1,null],[11,"shr_assign","","",1,null],[11,"shl","","",1,null],[11,"shl_assign","","",1,null],[11,"shr","","",1,null],[11,"shr_assign","","",1,null],[11,"shl","","",1,null],[11,"shl_assign","","",1,null],[11,"shr","","",1,null],[11,"shr_assign","","",1,null],[11,"shl","","",1,null],[11,"shl_assign","","",1,null],[11,"shr","","",1,null],[11,"shr_assign","","",1,null],[11,"shl","","",1,null],[11,"shl_assign","","",1,null],[11,"shr","","",1,null],[11,"shr_assign","","",1,null],[11,"shl","","",1,null],[11,"shl_assign","","",1,null],[11,"shr","","",1,null],[11,"shr_assign",
searchIndex["flate2"]={"doc":"A DEFLATE-based stream compression/decompression library","items":[[3,"GzBuilder","flate2","A builder structure to create a new gzip Encoder.",null,null],[3,"GzHeader","","A structure representing the header of a gzip stream.",null,null],[3,"Compress","","Raw in-memory compression stream for blocks of data.",null,null],[3,"Decompress","","Raw in-memory decompression stream for blocks of data.",null,null],[3,"DataError","","Error returned when a decompression object finds that the input stream of\nbytes was not a valid input stream of bytes.",null,null],[4,"Status","","Possible status results of compressing some data or successfully\ndecompressing a block of data.",null,null],[13,"Ok","","Indicates success.",0,null],[13,"BufError","","Indicates that forward progress is not possible due to input or output\nbuffers being empty.",0,null],[13,"StreamEnd","","Indicates that all input has been consumed and all output bytes have\nbeen written. Decompression/compression should not be called again.",0,null],[4,"Flush","","Values which indicate the form of flushing to be used when compressing or\ndecompressing in-memory data.",null,null],[13,"None","","A typical parameter for passing to compression/decompression functions,\nthis indicates that the underlying stream to decide how much data to\naccumulate before producing output in order to maximize compression.",1,null],[13,"Sync","","All pending output is flushed to the output buffer and the output is\naligned on a byte boundary so that the decompressor can get all input\ndata available so far.",1,null],[13,"Partial","","All pending output is flushed to the output buffer, but the output is\nnot aligned to a byte boundary.",1,null],[13,"Block","","A deflate block is completed and emitted, as for `Flush::Sync`, but the\noutput is not aligned on a byte boundary and up to seven vits of the\ncurrent block are held to be written as the next byte after the next\ndeflate block is completed.",1,null],[13,"Full","","All output is flushed as with `Flush::Sync` and the compression state is\nreset so decompression can restart from this point if previous\ncompressed data has been damaged or if random access is desired.",1,null],[13,"Finish","","Pending input is processed and pending output is flushed.",1,null],[4,"Compression","","When compressing data, the compression level can be specified by a value in\nthis enum.",null,null],[13,"None","","No compression is to be performed, this may actually inflate data\nslightly when encoding.",2,null],[13,"Fast","","Optimize for the best speed of encoding.",2,null],[13,"Best","","Optimize for the size of data being encoded.",2,null],[13,"Default","","Choose the default compression, a balance between speed and size.",2,null],[11,"new","","Create a new blank builder with no header by default.",3,{"inputs":[],"output":{"name":"builder"}}],[11,"mtime","","Configure the `mtime` field in the gzip header.",3,null],[11,"extra","","Configure the `extra` field in the gzip header.",3,null],[11,"filename","","Configure the `filename` field in the gzip header.",3,null],[11,"comment","","Configure the `comment` field in the gzip header.",3,null],[11,"write","","Consume this builder, creating a writer encoder in the process.",3,null],[11,"read","","Consume this builder, creating a reader encoder in the process.",3,null],[11,"buf_read","","Consume this builder, creating a reader encoder in the process.",3,null],[11,"filename","","Returns the `filename` field of this gzip stream's header, if present.",4,null],[11,"extra","","Returns the `extra` field of this gzip stream's header, if present.",4,null],[11,"comment","","Returns the `comment` field of this gzip stream's header, if present.",4,null],[11,"mtime","","Returns the `mtime` field of this gzip stream's header, if present.",4,null],[11,"fmt","","",5,null],[11,"new","","Creates a new object ready for compressing data that it's given.",6,{"inputs":[{"name":"compression"},{"name":"bool"}],"output":{"name":"compress"}}],[11,"total_in","","Returnsthetotalnumberofin
searchIndex["num"]={"doc":"A collection of numeric types and traits for Rust.","items":[[8,"Integer","num","",null,null],[10,"div_floor","","Floored integer division.",0,null],[10,"mod_floor","","Floored integer modulo, satisfying:",0,null],[10,"gcd","","Greatest Common Divisor (GCD).",0,null],[10,"lcm","","Lowest Common Multiple (LCM).",0,null],[10,"divides","","Deprecated, use `is_multiple_of` instead.",0,null],[10,"is_multiple_of","","Returns `true` if `other` is a multiple of `self`.",0,null],[10,"is_even","","Returns `true` if the number is even.",0,null],[10,"is_odd","","Returns `true` if the number is odd.",0,null],[10,"div_rem","","Simultaneous truncated integer division and modulus.\nReturns `(quotient, remainder)`.",0,null],[11,"div_mod_floor","","Simultaneous floored integer division and modulus.\nReturns `(quotient, remainder)`.",0,null],[5,"range","","Returns an iterator over the given range [start, stop) (that is, starting\nat start (inclusive), and ending at stop (exclusive)).",null,{"inputs":[{"name":"a"},{"name":"a"}],"output":{"name":"range"}}],[5,"range_inclusive","","Return an iterator over the range [start, stop]",null,{"inputs":[{"name":"a"},{"name":"a"}],"output":{"name":"rangeinclusive"}}],[5,"range_step","","Return an iterator over the range [start, stop) by `step`. It handles overflow by stopping.",null,{"inputs":[{"name":"a"},{"name":"a"},{"name":"a"}],"output":{"name":"rangestep"}}],[5,"range_step_inclusive","","Return an iterator over the range [start, stop] by `step`. It handles overflow by stopping.",null,{"inputs":[{"name":"a"},{"name":"a"},{"name":"a"}],"output":{"name":"rangestepinclusive"}}],[11,"fmt","num_traits","",1,null],[11,"fmt","","",2,null],[8,"Num","num","The base trait for numeric types",null,null],[16,"FromStrRadixErr","","",3,null],[10,"from_str_radix","","Convert from a string and radix <= 36.",3,{"inputs":[{"name":"str"},{"name":"u32"}],"output":{"name":"result"}}],[8,"Zero","","Defines an additive identity element for `Self`.",null,null],[10,"zero","","Returns the additive identity element of `Self`, `0`.",4,{"inputs":[],"output":{"name":"self"}}],[10,"is_zero","","Returns `true` if `self` is equal to the additive identity.",4,null],[8,"One","","Defines a multiplicative identity element for `Self`.",null,null],[10,"one","","Returns the multiplicative identity element of `Self`, `1`.",5,{"inputs":[],"output":{"name":"self"}}],[8,"Signed","","Useful functions for signed numbers (i.e. numbers that can be negative).",null,null],[10,"abs","","Computes the absolute value.",6,null],[10,"abs_sub","","The positive difference of two numbers.",6,null],[10,"signum","","Returns the sign of the number.",6,null],[10,"is_positive","","Returns true if the number is positive and false if the number is zero or negative.",6,null],[10,"is_negative","","Returns true if the number is negative and false if the number is zero or positive.",6,null],[8,"Unsigned","","A trait for values which cannot be negative",null,null],[8,"Bounded","","Numbers which have upper and lower bounds",null,null],[10,"min_value","","returns the smallest finite number this type can represent",7,{"inputs":[],"output":{"name":"self"}}],[10,"max_value","","returns the largest finite number this type can represent",7,{"inputs":[],"output":{"name":"self"}}],[8,"Saturating","","Saturating math operations",null,null],[10,"saturating_add","","Saturating addition operator.\nReturns a+b, saturating at the numeric bounds instead of overflowing.",8,null],[10,"saturating_sub","","Saturating subtraction operator.\nReturns a-b, saturating at the numeric bounds instead of overflowing.",8,null],[8,"CheckedAdd","","Performs addition that returns `None` instead of wrapping around on\noverflow.",null,null],[10,"checked_add","","Adds two numbers, checking for overflow. If overflow happens, `None` is\nreturned.",9,null],[8,"CheckedSub","","Performs subtraction that returns `None` instead of wrapping around on underflow.",null,null],[10,"checked_sub","","Subtractstwonumbers,checkingforunderflow.Ifunderflowhappens,\n`None`isretu
searchIndex["num_iter"]={"doc":"External iterators for generic mathematics","items":[[3,"Range","num_iter","An iterator over the range [start, stop)",null,null],[3,"RangeInclusive","","An iterator over the range [start, stop]",null,null],[3,"RangeStep","","An iterator over the range [start, stop) by `step`. It handles overflow by stopping.",null,null],[3,"RangeStepInclusive","","An iterator over the range [start, stop] by `step`. It handles overflow by stopping.",null,null],[5,"range","","Returns an iterator over the given range [start, stop) (that is, starting\nat start (inclusive), and ending at stop (exclusive)).",null,{"inputs":[{"name":"a"},{"name":"a"}],"output":{"name":"range"}}],[5,"range_inclusive","","Return an iterator over the range [start, stop]",null,{"inputs":[{"name":"a"},{"name":"a"}],"output":{"name":"rangeinclusive"}}],[5,"range_step","","Return an iterator over the range [start, stop) by `step`. It handles overflow by stopping.",null,{"inputs":[{"name":"a"},{"name":"a"},{"name":"a"}],"output":{"name":"rangestep"}}],[5,"range_step_inclusive","","Return an iterator over the range [start, stop] by `step`. It handles overflow by stopping.",null,{"inputs":[{"name":"a"},{"name":"a"},{"name":"a"}],"output":{"name":"rangestepinclusive"}}],[11,"clone","","",0,null],[11,"next","","",0,null],[11,"size_hint","","",0,null],[11,"next_back","","",0,null],[11,"clone","","",1,null],[11,"next","","",1,null],[11,"size_hint","","",1,null],[11,"next_back","","",1,null],[11,"clone","","",2,null],[11,"next","","",2,null],[11,"clone","","",3,null],[11,"next","","",3,null]],"paths":[[3,"Range"],[3,"RangeInclusive"],[3,"RangeStep"],[3,"RangeStepInclusive"]]};
searchIndex["deque"]={"doc":"A (mostly) lock-free concurrent work-stealing deque","items":[[3,"Worker","deque","Worker half of the work-stealing deque. This worker has exclusive access to\none side of the deque, and uses `push` and `pop` method to manipulate it.",null,null],[3,"Stealer","","The stealing half of the work-stealing deque. Stealers have access to the\nopposite end of the deque from the worker, and they only have access to the\n`steal` method.",null,null],[4,"Stolen","","When stealing some data, this is an enumeration of the possible outcomes.",null,null],[13,"Empty","","The deque was empty at the time of stealing",0,null],[13,"Abort","","The stealer lost the race for stealing data, and a retry may return more\ndata.",0,null],[13,"Data","","The stealer has successfully stolen some data.",0,null],[5,"new","","Allocates a new work-stealing deque.",null,null],[11,"clone","","",1,null],[11,"fmt","","",0,null],[11,"eq","","",0,null],[11,"ne","","",0,null],[11,"push","","Pushes data onto the front of this work queue.",2,null],[11,"pop","","Pops data off the front of the work queue, returning `None` on an empty\nqueue.",2,null],[11,"steal","","Steals work off the end of the queue (opposite of the worker's end)",1,null]],"paths":[[4,"Stolen"],[3,"Stealer"],[3,"Worker"]]};
searchIndex["rand"]={"doc":"Utilities for random number generation","items":[[3,"Generator","rand","Iterator which will generate a stream of random items.",null,null],[3,"AsciiGenerator","","Iterator which will continuously generate random ascii characters.",null,null],[3,"XorShiftRng","","An Xorshift[1] random number\ngenerator.",null,null],[3,"Open01","","A wrapper for generating floating point numbers uniformly in the\nopen interval `(0,1)` (not including either endpoint).",null,null],[12,"0","","",0,null],[3,"Closed01","","A wrapper for generating floating point numbers uniformly in the\nclosed interval `[0,1]` (including both endpoints).",null,null],[12,"0","","",1,null],[3,"StdRng","","The standard RNG. This is designed to be efficient on the current\nplatform.",null,null],[3,"ThreadRng","","The thread-local RNG.",null,null],[5,"weak_rng","","Create a weak random number generator with a default algorithm and seed.",null,{"inputs":[],"output":{"name":"xorshiftrng"}}],[5,"thread_rng","","Retrieve the lazily-initialized thread-local random number\ngenerator, seeded by the system. Intended to be used in method\nchaining style, e.g. `thread_rng().gen::<i32>()`.",null,{"inputs":[],"output":{"name":"threadrng"}}],[5,"random","","Generates a random value using the thread-local random number generator.",null,{"inputs":[],"output":{"name":"t"}}],[5,"sample","","Randomly sample up to `amount` elements from an iterator.",null,{"inputs":[{"name":"r"},{"name":"i"},{"name":"usize"}],"output":{"name":"vec"}}],[0,"distributions","","Sampling from random distributions.",null,null],[3,"RandSample","rand::distributions","A wrapper for generating types that implement `Rand` via the\n`Sample` & `IndependentSample` traits.",null,null],[3,"Weighted","","A value with a particular weight for use with `WeightedChoice`.",null,null],[12,"weight","","The numerical weight of this item",2,null],[12,"item","","The actual item which is being weighted",2,null],[3,"WeightedChoice","","A distribution that selects from a finite collection of weighted items.",null,null],[0,"range","","Generating numbers between two others.",null,null],[3,"Range","rand::distributions::range","Sample values uniformly between two bounds.",null,null],[8,"SampleRange","","The helper trait for types that have a sensible way to sample\nuniformly between two values. This should not be used directly,\nand is only to facilitate `Range`.",null,null],[10,"construct_range","","Construct the `Range` object that `sample_range`\nrequires. This should not ever be called directly, only via\n`Range::new`, which will check that `low < high`, so this\nfunction doesn't have to repeat the check.",3,{"inputs":[{"name":"self"},{"name":"self"}],"output":{"name":"range"}}],[10,"sample_range","","Sample a value from the given `Range` with the given `Rng` as\na source of randomness.",3,{"inputs":[{"name":"range"},{"name":"r"}],"output":{"name":"self"}}],[11,"clone","","",4,null],[11,"new","","Create a new `Range` instance that samples uniformly from\n`[low, high)`. Panics if `low >= high`.",4,{"inputs":[{"name":"x"},{"name":"x"}],"output":{"name":"range"}}],[11,"sample","","",4,null],[11,"ind_sample","","",4,null],[0,"gamma","rand::distributions","The Gamma and derived distributions.",null,null],[3,"Gamma","rand::distributions::gamma","The Gamma distribution `Gamma(shape, scale)` distribution.",null,null],[3,"ChiSquared","","The chi-squared distribution `χ²(k)`, where `k` is the degrees of\nfreedom.",null,null],[3,"FisherF","","The Fisher F distribution `F(m, n)`.",null,null],[3,"StudentT","","The Student t distribution, `t(nu)`, where `nu` is the degrees of\nfreedom.",null,null],[11,"clone","","",5,null],[11,"new","","Construct an object representing the `Gamma(shape, scale)`\ndistribution.",5,{"inputs":[{"name":"f64"},{"name":"f64"}],"output":{"name":"gamma"}}],[11,"sample","","",5,null],[11,"ind_sample","","",5,null],[11,"clone","","",6,null],[11,"new","","Create a new chi-squared distribution with degrees-of-freedom\n`k`. Panics if `k < 0`.",6,{"inputs":[{"name":"f64
searchIndex["num_integer"]={"doc":"Integer trait and functions.","items":[[5,"div_rem","num_integer","Simultaneous integer division and modulus",null,null],[5,"div_floor","","Floored integer division",null,{"inputs":[{"name":"t"},{"name":"t"}],"output":{"name":"t"}}],[5,"mod_floor","","Floored integer modulus",null,{"inputs":[{"name":"t"},{"name":"t"}],"output":{"name":"t"}}],[5,"div_mod_floor","","Simultaneous floored integer division and modulus",null,null],[5,"gcd","","Calculates the Greatest Common Divisor (GCD) of the number and `other`. The\nresult is always positive.",null,{"inputs":[{"name":"t"},{"name":"t"}],"output":{"name":"t"}}],[5,"lcm","","Calculates the Lowest Common Multiple (LCM) of the number and `other`.",null,{"inputs":[{"name":"t"},{"name":"t"}],"output":{"name":"t"}}],[8,"Integer","","",null,null],[10,"div_floor","","Floored integer division.",0,null],[10,"mod_floor","","Floored integer modulo, satisfying:",0,null],[10,"gcd","","Greatest Common Divisor (GCD).",0,null],[10,"lcm","","Lowest Common Multiple (LCM).",0,null],[10,"divides","","Deprecated, use `is_multiple_of` instead.",0,null],[10,"is_multiple_of","","Returns `true` if `other` is a multiple of `self`.",0,null],[10,"is_even","","Returns `true` if the number is even.",0,null],[10,"is_odd","","Returns `true` if the number is odd.",0,null],[10,"div_rem","","Simultaneous truncated integer division and modulus.\nReturns `(quotient, remainder)`.",0,null],[11,"div_mod_floor","","Simultaneous floored integer division and modulus.\nReturns `(quotient, remainder)`.",0,null]],"paths":[[8,"Integer"]]};
searchIndex["num_cpus"]={"doc":"Replaces the deprecated functionality of std::os::num_cpus.","items":[[5,"get","num_cpus","Returns the number of CPUs of the current machine.",null,{"inputs":[],"output":{"name":"usize"}}]],"paths":[]};
searchIndex["num_traits"]={"doc":"Numeric traits for generic mathematics","items":[[3,"ParseFloatError","num_traits","",null,null],[12,"kind","","",0,null],[4,"FloatErrorKind","","",null,null],[13,"Empty","","",1,null],[13,"Invalid","","",1,null],[0,"identities","","",null,null],[8,"Zero","num_traits::identities","Defines an additive identity element for `Self`.",null,null],[10,"zero","","Returns the additive identity element of `Self`, `0`.",2,{"inputs":[],"output":{"name":"self"}}],[10,"is_zero","","Returns `true` if `self` is equal to the additive identity.",2,null],[8,"One","","Defines a multiplicative identity element for `Self`.",null,null],[10,"one","","Returns the multiplicative identity element of `Self`, `1`.",3,{"inputs":[],"output":{"name":"self"}}],[0,"sign","num_traits","",null,null],[8,"Signed","num_traits::sign","Useful functions for signed numbers (i.e. numbers that can be negative).",null,null],[10,"abs","","Computes the absolute value.",4,null],[10,"abs_sub","","The positive difference of two numbers.",4,null],[10,"signum","","Returns the sign of the number.",4,null],[10,"is_positive","","Returns true if the number is positive and false if the number is zero or negative.",4,null],[10,"is_negative","","Returns true if the number is negative and false if the number is zero or positive.",4,null],[8,"Unsigned","","A trait for values which cannot be negative",null,null],[0,"ops","num_traits","",null,null],[0,"saturating","num_traits::ops","",null,null],[8,"Saturating","num_traits::ops::saturating","Saturating math operations",null,null],[10,"saturating_add","","Saturating addition operator.\nReturns a+b, saturating at the numeric bounds instead of overflowing.",5,null],[10,"saturating_sub","","Saturating subtraction operator.\nReturns a-b, saturating at the numeric bounds instead of overflowing.",5,null],[0,"checked","num_traits::ops","",null,null],[8,"CheckedAdd","num_traits::ops::checked","Performs addition that returns `None` instead of wrapping around on\noverflow.",null,null],[10,"checked_add","","Adds two numbers, checking for overflow. If overflow happens, `None` is\nreturned.",6,null],[8,"CheckedSub","","Performs subtraction that returns `None` instead of wrapping around on underflow.",null,null],[10,"checked_sub","","Subtracts two numbers, checking for underflow. If underflow happens,\n`None` is returned.",7,null],[8,"CheckedMul","","Performs multiplication that returns `None` instead of wrapping around on underflow or\noverflow.",null,null],[10,"checked_mul","","Multiplies two numbers, checking for underflow or overflow. If underflow\nor overflow happens, `None` is returned.",8,null],[8,"CheckedDiv","","Performs division that returns `None` instead of panicking on division by zero and instead of\nwrapping around on underflow and overflow.",null,null],[10,"checked_div","","Divides two numbers, checking for underflow, overflow and division by\nzero. If any of that happens, `None` is returned.",9,null],[0,"bounds","num_traits","",null,null],[8,"Bounded","num_traits::bounds","Numbers which have upper and lower bounds",null,null],[10,"min_value","","returns the smallest finite number this type can represent",10,{"inputs":[],"output":{"name":"self"}}],[10,"max_value","","returns the largest finite number this type can represent",10,{"inputs":[],"output":{"name":"self"}}],[0,"float","num_traits","",null,null],[8,"Float","num_traits::float","",null,null],[10,"nan","","Returns the `NaN` value.",11,{"inputs":[],"output":{"name":"self"}}],[10,"infinity","","Returns the infinite value.",11,{"inputs":[],"output":{"name":"self"}}],[10,"neg_infinity","","Returns the negative infinite value.",11,{"inputs":[],"output":{"name":"self"}}],[10,"neg_zero","","Returns `-0.0`.",11,{"inputs":[],"output":{"name":"self"}}],[10,"min_value","","Returns the smallest finite value that this type can represent.",11,{"inputs":[],"output":{"name":"self"}}],[10,"min_positive_value","","Returns the smallest positive, normalized value that this type can represent.",11,{"inputs":[],"output":{"name":"self"}}],[10,"max_value","","Retu
searchIndex["gif"]={"doc":"# GIF en- and decoding library [![Build Status](https://travis-ci.org/PistonDevelopers/image-gif.svg?branch=master)](https://travis-ci.org/PistonDevelopers/image-gif)","items":[[3,"Frame","gif","A GIF frame",null,null],[12,"delay","","Frame delay in units of 10ms.",0,null],[12,"dispose","","Disposal method.",0,null],[12,"transparent","","Transparent index (if available).",0,null],[12,"needs_user_input","","True if the frame needs user input do be displayed.",0,null],[12,"top","","Offset from the top border of the canvas.",0,null],[12,"left","","Offset from the left border of the canvas.",0,null],[12,"width","","Width of the frame.",0,null],[12,"height","","Height of the frame.",0,null],[12,"interlaced","","True if the image is interlaced.",0,null],[12,"palette","","Frame local color palette if available.",0,null],[12,"buffer","","Buffer containing the image data.\nOnly indices unless configured differently.",0,null],[3,"StreamingDecoder","","GIF decoder which supports streaming",null,null],[3,"MemoryLimit","","Memory limit in bytes. `MemoryLimit::Some(0)` means\nthat there is no memory limit set.",null,null],[12,"0","","",1,null],[3,"Reader","","GIF decoder",null,null],[3,"Decoder","","GIF decoder",null,null],[3,"Encoder","","GIF encoder.",null,null],[4,"Block","","Known GIF block types",null,null],[13,"Image","","Image block.",2,null],[13,"Extension","","Extension block.",2,null],[13,"Trailer","","Image trailer.",2,null],[4,"Extension","","Known GIF extensions",null,null],[13,"Text","","Text extension.",3,null],[13,"Control","","Control extension.",3,null],[13,"Comment","","Comment extension.",3,null],[13,"Application","","Application extension.",3,null],[4,"DisposalMethod","","Disposal method",null,null],[13,"Any","","StreamingDecoder is not required to take any action.",4,null],[13,"Keep","","Do not dispose.",4,null],[13,"Background","","Restore to background color.",4,null],[13,"Previous","","Restore to previous.",4,null],[4,"Decoded","","Indicates whether a certain object has been decoded",null,null],[13,"Nothing","","Decoded nothing.",5,null],[13,"GlobalPalette","","Global palette.",5,null],[13,"BackgroundColor","","Index of the background color in the global palette.",5,null],[13,"Trailer","","Decoded the image trailer.",5,null],[13,"BlockStart","","The start of a block.",5,null],[13,"SubBlockFinished","","Decoded a sub-block. More sub-block are available.",5,null],[13,"BlockFinished","","Decoded the last (or only) sub-block of a block.",5,null],[13,"Frame","","Decoded all information of the next frame.\nThe returned frame does **not** any image data.",5,null],[13,"Data","","Decoded some data of the current frame.",5,null],[13,"DataEnd","","No more data available the current frame.",5,null],[4,"DecodingError","","Decoding error.",null,null],[13,"Format","","Returned if the image is found to be malformed.",6,null],[13,"Internal","","Internal (logic) error.",6,null],[13,"Io","","Wraps `std::io::Error`.",6,null],[4,"ColorOutput","","Output mode for the image data",null,null],[13,"RGBA","","The decoder expands the image data to 32bit RGBA.\nThis affects:",7,null],[13,"Indexed","","The decoder returns the raw indexed data.",7,null],[4,"Extensions","","Configures how extensions should be handled",null,null],[13,"Save","","Saves all extention data",8,null],[13,"Skip","","Skips the data of unknown extensions\nand extracts the data from known ones",8,null],[4,"ExtensionData","","Extension data.",null,null],[13,"Control","","Control extension. Use `ExtensionData::new_control_ext` to construct.",9,null],[12,"flags","gif::ExtensionData","Flags.",9,null],[12,"delay","","Frame delay.",9,null],[12,"trns","","Transparent index.",9,null],[13,"Repetitions","gif","Sets the number of repetitions",9,null],[4,"Repeat","","Number of repetitions",null,null],[13,"Finite","","Finite number of repetitions",10,null],[13,"Infinite","","Infinite number of repetitions",10,null],[11,"clone","","",4,null],[11,"fmt","","",4,null],[11,"from_u8","","Converts `u8` to `Option<Self>`",4,{"inputs":[{"name":"u8"}],"o
searchIndex["lzw"]={"doc":"# LZW decoder and encoder","items":[[3,"Decoder","lzw","Decoder for a LZW compressed stream (this algorithm is used for GIF files).",null,null],[3,"DecoderEarlyChange","","Decoder for a LZW compressed stream using an “early change” algorithm (used in TIFF files).",null,null],[3,"Encoder","","LZW encoder using the algorithm of GIF files.",null,null],[3,"LsbReader","","Reads bits from a byte stream, LSB first.",null,null],[3,"LsbWriter","","Writes bits to a byte stream, LSB first.",null,null],[3,"MsbReader","","Reads bits from a byte stream, MSB first.",null,null],[3,"MsbWriter","","Writes bits to a byte stream, MSB first.",null,null],[4,"Bits","","Containes either the consumed bytes and reconstructed bits or\nonly the consumed bytes if the supplied buffer was not bit enough",null,null],[13,"Some","","Consumed bytes, reconstructed bits",0,null],[13,"None","","Consumed bytes",0,null],[5,"encode","","Convenience function that reads and compresses all bytes from `R`.",null,{"inputs":[{"name":"r"},{"name":"w"},{"name":"u8"}],"output":{"name":"result"}}],[11,"fmt","","",1,null],[11,"new","","Creates a new LZW decoder.",1,{"inputs":[{"name":"r"},{"name":"u8"}],"output":{"name":"decoder"}}],[11,"decode_bytes","","Tries to obtain and decode a code word from `bytes`.",1,null],[11,"fmt","","",2,null],[11,"new","","Creates a new LZW decoder.",2,{"inputs":[{"name":"r"},{"name":"u8"}],"output":{"name":"decoderearlychange"}}],[11,"decode_bytes","","Tries to obtain and decode a code word from `bytes`.",2,null],[11,"new","","Creates a new LZW encoder.",3,{"inputs":[{"name":"w"},{"name":"u8"}],"output":{"name":"result"}}],[11,"encode_bytes","","Compresses `bytes` and writes the result into the writer.",3,null],[11,"drop","","",3,null],[11,"fmt","","",4,null],[11,"new","","Creates a new bit reader",4,{"inputs":[],"output":{"name":"lsbreader"}}],[11,"fmt","","",5,null],[11,"new","","Creates a new bit reader",5,{"inputs":[],"output":{"name":"msbreader"}}],[11,"read_bits","","",4,null],[11,"read_bits","","",5,null],[11,"new","","Creates a new bit reader",6,{"inputs":[{"name":"w"}],"output":{"name":"lsbwriter"}}],[11,"write","","",6,null],[11,"flush","","",6,null],[11,"new","","Creates a new bit reader",7,{"inputs":[{"name":"w"}],"output":{"name":"msbwriter"}}],[11,"write","","",7,null],[11,"flush","","",7,null],[11,"write_bits","","",6,null],[11,"write_bits","","",7,null],[8,"BitReader","","A bit reader.",null,null],[10,"read_bits","","Returns the next `n` bits.",8,null],[8,"BitWriter","","A bit writer.",null,null],[10,"write_bits","","Writes the next `n` bits.",9,null]],"paths":[[4,"Bits"],[3,"Decoder"],[3,"DecoderEarlyChange"],[3,"Encoder"],[3,"LsbReader"],[3,"MsbReader"],[3,"LsbWriter"],[3,"MsbWriter"],[8,"BitReader"],[8,"BitWriter"]]};
searchIndex["log"]={"doc":"A lightweight logging facade.","items":[[3,"LogRecord","log","The "payload" of a log message.",null,null],[3,"LogMetadata","","Metadata about a log message.",null,null],[3,"LogLocation","","The location of a log message.",null,null],[3,"MaxLogLevelFilter","","A token providing read and write access to the global maximum log level\nfilter.",null,null],[3,"SetLoggerError","","The type returned by `set_logger` if `set_logger` has already been called.",null,null],[3,"ShutdownLoggerError","","The type returned by `shutdown_logger_raw` if `shutdown_logger_raw` has\nalready been called or if `set_logger_raw` has not been called yet.",null,null],[4,"LogLevel","","An enum representing the available verbosity levels of the logging framework",null,null],[13,"Error","","The "error" level.",0,null],[13,"Warn","","The "warn" level.",0,null],[13,"Info","","The "info" level.",0,null],[13,"Debug","","The "debug" level.",0,null],[13,"Trace","","The "trace" level.",0,null],[4,"LogLevelFilter","","An enum representing the available verbosity level filters of the logging\nframework.",null,null],[13,"Off","","A level lower than all log levels.",1,null],[13,"Error","","Corresponds to the `Error` log level.",1,null],[13,"Warn","","Corresponds to the `Warn` log level.",1,null],[13,"Info","","Corresponds to the `Info` log level.",1,null],[13,"Debug","","Corresponds to the `Debug` log level.",1,null],[13,"Trace","","Corresponds to the `Trace` log level.",1,null],[5,"max_log_level","","Returns the current maximum log level.",null,{"inputs":[],"output":{"name":"loglevelfilter"}}],[5,"set_logger","","Sets the global logger.",null,{"inputs":[{"name":"m"}],"output":{"name":"result"}}],[5,"set_logger_raw","","Sets the global logger from a raw pointer.",null,{"inputs":[{"name":"m"}],"output":{"name":"result"}}],[5,"shutdown_logger","","Shuts down the global logger.",null,{"inputs":[],"output":{"name":"result"}}],[5,"shutdown_logger_raw","","Shuts down the global logger.",null,{"inputs":[],"output":{"name":"result"}}],[8,"Log","","A trait encapsulating the operations required of a logger",null,null],[10,"enabled","","Determines if a log message with the specified metadata would be\nlogged.",2,null],[10,"log","","Logs the `LogRecord`.",2,null],[11,"fmt","","",0,null],[11,"clone","","",0,null],[11,"eq","","",0,null],[11,"eq","","",0,null],[11,"partial_cmp","","",0,null],[11,"partial_cmp","","",0,null],[11,"cmp","","",0,null],[11,"from_str","","",0,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[11,"fmt","","",0,null],[11,"max","","Returns the most verbose logging level.",0,{"inputs":[],"output":{"name":"loglevel"}}],[11,"to_log_level_filter","","Converts the `LogLevel` to the equivalent `LogLevelFilter`.",0,null],[11,"fmt","","",1,null],[11,"clone","","",1,null],[11,"eq","","",1,null],[11,"eq","","",1,null],[11,"partial_cmp","","",1,null],[11,"partial_cmp","","",1,null],[11,"cmp","","",1,null],[11,"from_str","","",1,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[11,"fmt","","",1,null],[11,"max","","Returns the most verbose logging level filter.",1,{"inputs":[],"output":{"name":"loglevelfilter"}}],[11,"to_log_level","","Converts `self` to the equivalent `LogLevel`.",1,null],[11,"args","","The message body.",3,null],[11,"metadata","","Metadata about the log directive.",3,null],[11,"location","","The location of the log directive.",3,null],[11,"level","","The verbosity level of the message.",3,null],[11,"target","","The name of the target of the directive.",3,null],[11,"level","","The verbosity level of the message.",4,null],[11,"target","","The name of the target of the directive.",4,null],[11,"fmt","","",5,null],[11,"clone","","",5,null],[11,"module_path","","The module path of the message.",5,null],[11,"file","","The source file containing the message.",5,null],[11,"line","","The line containing the message.",5,null],[11,"fmt","","",6,null],[11,"get","","Gets the current maximum log level filter.",6,null],[11,"set","","Sets the maximum log level.",6,
searchIndex["byteorder"]={"doc":"This crate provides convenience methods for encoding and decoding numbers\nin either big-endian or little-endian order.","items":[[4,"BigEndian","byteorder","Defines big-endian serialization.",null,null],[4,"LittleEndian","","Defines little-endian serialization.",null,null],[6,"NetworkEndian","","Defines network byte order serialization.",null,null],[6,"NativeEndian","","Defines system native-endian serialization.",null,null],[8,"ReadBytesExt","","Extends `Read` with methods for reading numbers. (For `std::io`.)",null,null],[11,"read_u8","","Reads an unsigned 8 bit integer from the underlying reader.",0,null],[11,"read_i8","","Reads a signed 8 bit integer from the underlying reader.",0,null],[11,"read_u16","","Reads an unsigned 16 bit integer from the underlying reader.",0,null],[11,"read_i16","","Reads a signed 16 bit integer from the underlying reader.",0,null],[11,"read_u32","","Reads an unsigned 32 bit integer from the underlying reader.",0,null],[11,"read_i32","","Reads a signed 32 bit integer from the underlying reader.",0,null],[11,"read_u64","","Reads an unsigned 64 bit integer from the underlying reader.",0,null],[11,"read_i64","","Reads a signed 64 bit integer from the underlying reader.",0,null],[11,"read_uint","","Reads an unsigned n-bytes integer from the underlying reader.",0,null],[11,"read_int","","Reads a signed n-bytes integer from the underlying reader.",0,null],[11,"read_f32","","Reads a IEEE754 single-precision (4 bytes) floating point number from\nthe underlying reader.",0,null],[11,"read_f64","","Reads a IEEE754 double-precision (8 bytes) floating point number from\nthe underlying reader.",0,null],[8,"WriteBytesExt","","Extends `Write` with methods for writing numbers. (For `std::io`.)",null,null],[11,"write_u8","","Writes an unsigned 8 bit integer to the underlying writer.",1,null],[11,"write_i8","","Writes a signed 8 bit integer to the underlying writer.",1,null],[11,"write_u16","","Writes an unsigned 16 bit integer to the underlying writer.",1,null],[11,"write_i16","","Writes a signed 16 bit integer to the underlying writer.",1,null],[11,"write_u32","","Writes an unsigned 32 bit integer to the underlying writer.",1,null],[11,"write_i32","","Writes a signed 32 bit integer to the underlying writer.",1,null],[11,"write_u64","","Writes an unsigned 64 bit integer to the underlying writer.",1,null],[11,"write_i64","","Writes a signed 64 bit integer to the underlying writer.",1,null],[11,"write_uint","","Writes an unsigned n-bytes integer to the underlying writer.",1,null],[11,"write_int","","Writes a signed n-bytes integer to the underlying writer.",1,null],[11,"write_f32","","Writes a IEEE754 single-precision (4 bytes) floating point number to\nthe underlying writer.",1,null],[11,"write_f64","","Writes a IEEE754 double-precision (8 bytes) floating point number to\nthe underlying writer.",1,null],[8,"ByteOrder","","ByteOrder describes types that can serialize integers as bytes.",null,null],[10,"read_u16","","Reads an unsigned 16 bit integer from `buf`.",2,null],[10,"read_u32","","Reads an unsigned 32 bit integer from `buf`.",2,null],[10,"read_u64","","Reads an unsigned 64 bit integer from `buf`.",2,null],[10,"read_uint","","Reads an unsigned n-bytes integer from `buf`.",2,null],[10,"write_u16","","Writes an unsigned 16 bit integer `n` to `buf`.",2,null],[10,"write_u32","","Writes an unsigned 32 bit integer `n` to `buf`.",2,null],[10,"write_u64","","Writes an unsigned 64 bit integer `n` to `buf`.",2,null],[10,"write_uint","","Writes an unsigned integer `n` to `buf` using only `nbytes`.",2,null],[11,"read_i16","","Reads a signed 16 bit integer from `buf`.",2,null],[11,"read_i32","","Reads a signed 32 bit integer from `buf`.",2,null],[11,"read_i64","","Reads a signed 64 bit integer from `buf`.",2,null],[11,"read_int","","Reads a signed n-bytes integer from `buf`.",2,null],[11,"read_f32","","Reads a IEEE754 single-precision (4 bytes) floating point number.",2,null],[11,"read_f64","","Reads a IEEE754 double-precision (8 bytes) floating point number.",2,null],[11,"write_i
searchIndex["color_quant"]={"doc":"# Color quantization library\nThis library provides a color quantizer based on the [NEUQUANT](http://members.ozemail.com.au/~dekker/NEUQUANT.HTML)\nquantization algorithm by Anthony Dekker.\n### Usage\n```\nlet data = vec![0; 40];\nlet nq = color_quant::NeuQuant::new(10, 256, &data);\nlet indixes: Vec<u8> = data.chunks(4).map(|pix| nq.index_of(pix) as u8).collect();\nlet color_map = nq.color_map_rgba();\n```","items":[[3,"NeuQuant","color_quant","Neural network based color quantizer.",null,null],[11,"new","","Creates a new neuronal network and trains it with the supplied data.",0,null],[11,"init","","Initializes the neuronal network and trains it with the supplied data.",0,null],[11,"map_pixel","","Maps the rgba-pixel in-place to the best-matching color in the color map.",0,null],[11,"index_of","","Finds the best-matching index in the color map.",0,null],[11,"color_map_rgba","","Returns the RGBA color map calculated from the sample.",0,null],[11,"color_map_rgb","","Returns the RGBA color map calculated from the sample.",0,null]],"paths":[[3,"NeuQuant"]]};
searchIndex["glob"]={"doc":"Support for matching file paths against Unix shell style patterns.","items":[[3,"Paths","glob","An iterator that yields `Path`s from the filesystem that match a particular\npattern.",null,null],[3,"GlobError","","A glob iteration error.",null,null],[3,"PatternError","","A pattern parsing error.",null,null],[12,"pos","","The approximate character index of where the error occurred.",0,null],[12,"msg","","A message describing the error.",0,null],[3,"Pattern","","A compiled Unix shell style pattern.",null,null],[3,"MatchOptions","","Configuration options to modify the behaviour of `Pattern::matches_with(..)`",null,null],[12,"case_sensitive","","Whether or not patterns should be matched in a case-sensitive manner.\nThis currently only considers upper/lower case relationships between\nASCII characters, but in future this might be extended to work with\nUnicode.",1,null],[12,"require_literal_separator","","If this is true then path-component separator characters (e.g. `/` on\nPosix) must be matched by a literal `/`, rather than by `*` or `?` or\n`[...]`",1,null],[12,"require_literal_leading_dot","","If this is true then paths that contain components that start with a `.`\nwill not match unless the `.` appears literally in the pattern: `*`, `?`, `**`,\nor `[...]` will not match. This is useful because such files are\nconventionally considered hidden on Unix systems and it might be\ndesirable to skip them when listing files.",1,null],[5,"glob","","Return an iterator that produces all the Paths that match the given pattern,\nwhich may be absolute or relative to the current working directory.",null,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[5,"glob_with","","Return an iterator that produces all the Paths that match the given pattern,\nwhich may be absolute or relative to the current working directory.",null,{"inputs":[{"name":"str"},{"name":"matchoptions"}],"output":{"name":"result"}}],[6,"GlobResult","","An alias for a glob iteration result.",null,null],[11,"fmt","","",2,null],[11,"path","","The Path that the error corresponds to.",2,null],[11,"error","","The error in question.",2,null],[11,"description","","",2,null],[11,"cause","","",2,null],[11,"fmt","","",2,null],[11,"next","","",3,null],[11,"fmt","","",0,null],[11,"description","","",0,null],[11,"fmt","","",0,null],[11,"fmt","","",4,null],[11,"default","","",4,{"inputs":[],"output":{"name":"pattern"}}],[11,"hash","","",4,null],[11,"cmp","","",4,null],[11,"partial_cmp","","",4,null],[11,"lt","","",4,null],[11,"le","","",4,null],[11,"gt","","",4,null],[11,"ge","","",4,null],[11,"eq","","",4,null],[11,"ne","","",4,null],[11,"clone","","",4,null],[11,"fmt","","",4,null],[11,"from_str","","",4,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[11,"new","","This function compiles Unix shell style patterns.",4,{"inputs":[{"name":"str"}],"output":{"name":"result"}}],[11,"escape","","Escape metacharacters within the given string by surrounding them in\nbrackets. The resulting string will, when compiled into a `Pattern`,\nmatch the input string and nothing else.",4,{"inputs":[{"name":"str"}],"output":{"name":"string"}}],[11,"matches","","Return if the given `str` matches this `Pattern` using the default\nmatch options (i.e. `MatchOptions::new()`).",4,null],[11,"matches_path","","Return if the given `Path`, when converted to a `str`, matches this\n`Pattern` using the default match options (i.e. `MatchOptions::new()`).",4,null],[11,"matches_with","","Return if the given `str` matches this `Pattern` using the specified\nmatch options.",4,null],[11,"matches_path_with","","Return if the given `Path`, when converted to a `str`, matches this\n`Pattern` using the specified match options.",4,null],[11,"as_str","","Access the original glob pattern.",4,null],[11,"default","","",1,{"inputs":[],"output":{"name":"matchoptions"}}],[11,"hash","","",1,null],[11,"cmp","","",1,null],[11,"partial_cmp","","",1,null],[11,"lt","","",1,null],[11,"le","","",1,null],[11,"gt","","",1,null],[11,"ge","","",1,null],[11,"eq","","",1,null],[11,"ne","","",1,null],[11,