Crate guid [] [src]

This crate provides a guid! macro for expressing GUID structs with a convenient literal syntax. A GUID is a Windows globally unique identifier, usually expressed in the following format:


With this crate, a GUID can be generated with the syntax:



extern crate guid;

use guid::GUID;

const MY_GUID: GUID = guid!{"6B29FC40-CA47-1067-B31D-00DD010662DA"};

fn main() {
    assert_eq!(MY_GUID.Data1, 0x6B29FC40);
    assert_eq!(MY_GUID.Data2, 0xCA47);
    assert_eq!(MY_GUID.Data3, 0x1067);
    assert_eq!(MY_GUID.Data4, [ 0xB3, 0x1D, 0x00, 0xDD, 0x01, 0x06, 0x62, 0xDA ]);

The GUID type is re-exported from the winapi crate, and is only available in Windows. The guid! macro is also only available in Windows.

This crate also provides a parser, which can be used to parse GUID strings at runtime. The parser is only available to generate an array of bytes on non-Windows platforms. In Windows, this crate defines a parser that produces a GUID struct.


This crate supports all versions of Rust (stable and nightly) starting with Rust 1.15.



Error returned whenever a string fails to parse as a GUID.



Parse a source string as a GUID, and return the GUID as a sequence of bytes.