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:

{6B29FC40-CA47-1067-B31D-00DD010662DA}

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

guid!{"6B29FC40-CA47-1067-B31D-00DD010662DA"}

Example

#[macro_use]
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.

Compatibility

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

Macros

guid

A literal syntax for generating GUID values.

Structs

GUID
ParseGuidError

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

Functions

parse

Parse a source string as a GUID.

parse_bytes

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