doc_feature_examples/
lib.rs1#![cfg_attr(docsrs, feature(doc_auto_cfg))]
2pub fn add(left: u64, right: u64) -> u64 {
3 left + right
4}
5
6#[cfg(feature = "foo")]
7pub fn foo() -> u64 {
8 1 + 1
9}
10
11#[cfg(target_arch = "wasm32")]
12pub fn wasm_only_func() -> u64 {
13 1 + 1
14}
15
16pub struct MyStruct {
17 pub field: u64
18}
19
20#[cfg(feature = "traits")]
21impl Default for MyStruct {
22 fn default() -> Self {
23 Self { field: 0 }
24 }
25}
26
27#[cfg(test)]
28mod tests {
29 use super::*;
30
31 #[test]
32 fn it_works() {
33 let result = add(2, 2);
34 assert_eq!(result, 4);
35 }
36}