var searchIndex = {}; searchIndex["cpuio"] = {"doc":"CPU-level input/output instructions, including `inb`, `outb`, etc., and\na high level Rust wrapper.","items":[[3,"Port","cpuio","An I/O port over an arbitrary type supporting the `InOut` interface.",null,null],[5,"inb","","Read a `u8`-sized value from `port`.",null,{"inputs":[{"name":"u16"}],"output":{"name":"u8"}}],[5,"outb","","Write a `u8`-sized `value` to `port`.",null,{"inputs":[{"name":"u16"},{"name":"u8"}],"output":null}],[5,"inw","","Read a `u16`-sized value from `port`.",null,{"inputs":[{"name":"u16"}],"output":{"name":"u16"}}],[5,"outw","","Write a `u8`-sized `value` to `port`.",null,{"inputs":[{"name":"u16"},{"name":"u16"}],"output":null}],[5,"inl","","Read a `u32`-sized value from `port`.",null,{"inputs":[{"name":"u16"}],"output":{"name":"u32"}}],[5,"outl","","Write a `u32`-sized `value` to `port`.",null,{"inputs":[{"name":"u16"},{"name":"u32"}],"output":null}],[8,"InOut","","This trait is defined for any type which can be read or written over a\nport. The processor supports I/O with `u8`, `u16` and `u32`. The\nfunctions in this trait are all unsafe because they can write to\narbitrary ports.",null,null],[10,"port_in","","Read a value from the specified port.",0,{"inputs":[{"name":"u16"}],"output":{"name":"self"}}],[10,"port_out","","Write a value to the specified port.",0,{"inputs":[{"name":"u16"},{"name":"self"}],"output":null}],[11,"fmt","","",1,null],[11,"new","","Create a new I/O port. This is marked `unsafe` because it's the\nresponsibility of the caller to make that we're pointed at a valid\nport address, and to make sure that returned port is used\ncorrectly.",1,{"inputs":[{"name":"u16"}],"output":{"name":"port"}}],[11,"read","","Read data from the port. This is nominally safe, because you\nshouldn't be able to get hold of a port object unless somebody\nthinks it's safe to give you one.",1,null],[11,"write","","Write data to the port.",1,null]],"paths":[[8,"InOut"],[3,"Port"]]}; initSearch(searchIndex);