Vendor dependencies

This commit is contained in:
2026-08-01 16:11:49 +03:00
parent 7f139a0241
commit 6b5e7f0f8b
29706 changed files with 9575646 additions and 0 deletions
@@ -0,0 +1,61 @@
#[macro_use]
extern crate derive_builder;
pub mod foo {
#[derive(Debug, PartialEq, Default, Builder, Clone)]
#[builder(private, setter(into))]
pub struct Lorem {
pub private: String,
#[builder(public)]
pub public: String,
}
#[derive(Debug, PartialEq, Default, Builder, Clone)]
#[builder(public, setter(into))]
pub struct Ipsum {
#[builder(private)]
pub private: String,
pub public: String,
}
#[test]
fn setters_same_module() {
let x = LoremBuilder::default()
.public("Hello")
.private("world!")
.build()
.unwrap();
assert_eq!(
x,
Lorem {
public: "Hello".into(),
private: "world!".into(),
}
);
let y = IpsumBuilder::default()
.public("Hello")
.private("world!")
.build()
.unwrap();
assert_eq!(
y,
Ipsum {
public: "Hello".into(),
private: "world!".into(),
}
);
}
}
#[test]
fn public_setters_foreign_module() {
let error = foo::IpsumBuilder::default()
.public("Hello")
.build()
.unwrap_err();
assert_eq!(&error.to_string(), "`private` must be initialized");
}