summaryrefslogtreecommitdiffstats
path: root/third_party/rust/pin-project-lite/tests/include/basic.rs
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/pin-project-lite/tests/include/basic.rs')
-rw-r--r--third_party/rust/pin-project-lite/tests/include/basic.rs35
1 files changed, 35 insertions, 0 deletions
diff --git a/third_party/rust/pin-project-lite/tests/include/basic.rs b/third_party/rust/pin-project-lite/tests/include/basic.rs
new file mode 100644
index 0000000000..25121f210b
--- /dev/null
+++ b/third_party/rust/pin-project-lite/tests/include/basic.rs
@@ -0,0 +1,35 @@
+// default pin_project! is completely safe.
+
+::pin_project_lite::pin_project! {
+ #[derive(Debug)]
+ pub struct DefaultStruct<T, U> {
+ #[pin]
+ pub pinned: T,
+ pub unpinned: U,
+ }
+}
+
+::pin_project_lite::pin_project! {
+ #[project = DefaultStructProj]
+ #[project_ref = DefaultStructProjRef]
+ #[derive(Debug)]
+ pub struct DefaultStructNamed<T, U> {
+ #[pin]
+ pub pinned: T,
+ pub unpinned: U,
+ }
+}
+
+::pin_project_lite::pin_project! {
+ #[project = DefaultEnumProj]
+ #[project_ref = DefaultEnumProjRef]
+ #[derive(Debug)]
+ pub enum DefaultEnum<T, U> {
+ Struct {
+ #[pin]
+ pinned: T,
+ unpinned: U,
+ },
+ Unit,
+ }
+}