GET Mac Hardware overview

Usage

To use this library, add the following to your Cargo.toml:

```toml

[dependencies] macexpertdevice = "0.1"

```

Check out our documentation for more details on how to use this library.

Simple

``` fn main() { let platformexpertdevice = macexpertdevice::os::IOPlatformExpertDevice::new().unwrap(); // println!("name:{}",platformexpertdevice.name()); println!("version:{}",platformexpertdevice.version()); println!("SerialNumber:{}",platformexpertdevice.serialnumber()); println!("Manufacturer:{}",platformexpertdevice.manufacturer()); println!("IOBusyInterest:{}",platformexpertdevice.iobusyinterest()); println!("IOInterruptControllers:{}",platformexpertdevice.iointerruptcontrollers()); // println!("IOPlatformSystemSleepPolicy:{}",platformexpertdevice.ioplatformsystemsleeppolicy()); println!("IOPolledInterface:{}",platformexpertdevice.iopolledinterface()); println!("IOPlatformUuid:{}",platformexpertdevice.ioplatform_uuid()); }

```

IOPlatformExpertDevice

text +-o Root <class IORegistryEntry, id xxxxxx, retain 17> +-o xxxxxx <class IOPlatformExpertDevice, id xxxxxx, registered, matched, active, busy 0 (13368 ms), retain 44> { "IOInterruptSpecifiers" = (<xxxxx>) "IOPolledInterface" = "SMCPolledInterface is not serializable" "IOPlatformUUID" = "xxxxxx" "serial-number" = <xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> "platform-feature" = <xxxxxx> "IOPlatformSystemSleepPolicy" = <xxxxxx> "IOBusyInterest" = "IOCommand is not serializable" "target-type" = <"Mac"> "IOInterruptControllers" = ("xxxxxx") "name" = <"/"> "version" = <"xxxxxx"> "manufacturer" = <"Apple Inc."> "compatible" = <"xxxxxx"> "product-name" = <"xxxxxx"> "IOPlatformSerialNumber" = "xxxxxx" "IOConsoleSecurityInterest" = "IOCommand is not serializable" "clock-frequency" = <xxxxx> "model" = <"xx"> "board-id" = <"xxxxxx"> "system-type" = <02> }