# crustacean-plugin
`crustacean!(<header>, + [, { <option>, + }]);`
### Options
See [here](http://kylemayes.com/crustacean/crustacean/struct.Generator.html) for information on how
options are used and their default values.
| `ALLOW_UNSUPPORTED_TYPES` | `bool` |
| `DERIVE_ENUM` | `[&str]` |
| `DERIVE_STRUCT` | `[&str]` |
| `DISPLAY_DIAGNOSTICS` | `bool` |
| `FILTER` | `"none"` | `"system"` | `"non-main"` |
| `IGNORE_ENUM_VARIANTS` | `[(&str, [&str])]` |
| `NESTED_MOD` | `&str` |
| `PRIMITIVE` | `[&str]` |
### Examples
#### Minimal
```rust
crustacean!("tests/headers/typedefs.h");
```
#### Arguments
```rust
crustacean!("tests/headers/typedefs.h": ["-std=c99"]);
```
#### Options
```rust
crustacean!("tests/headers/typedefs.h", { ALLOW_UNSUPPORTED_TYPES: true });
```
#### Maximal
```rust
crustacean!("tests/headers/enums.h": ["--std=c99"], {
ALLOW_UNSUPPORTED_TYPES: true,
DERIVE_ENUM: ["Debug"],
DERIVE_STRUCT: ["Debug"],
DISPLAY_DIAGNOSTICS: true,
FILTER: "non-main",
IGNORE_ENUM_VARIANTS: [("B", ["BFirst", "BLast"])],
NESTED_MOD: "inner",
PRIMITIVE: ["std", "os", "raw"],
});
```