// This module contains dead code. Its purpose is making sure that it compiles // === Non-Standard Linter Configuration === #![allow(dead_code)] #![deny(non_ascii_idents)] #![warn(unsafe_code)] use enso_prelude::*; #[derive(Clone, CloneRef)] struct StructUnit; #[derive(Clone, CloneRef)] struct StructUnnamedEmpty(); #[derive(Clone, CloneRef)] struct StructUnnamed(Rc, Rc); #[derive(Clone, CloneRef)] struct StructNamedEmpty {} #[derive(Clone, CloneRef)] struct StructNamed { named0: Rc, named1: Rc, } #[derive(Clone, CloneRef)] enum EnumEmpty {} #[derive(Clone, CloneRef)] enum Enum { Unit, NamedEmpty {}, Named { named0: Rc, named1: Rc }, UnnamedEmpty(), Unnamed(Rc, Rc), } #[derive(CloneRef, Derivative)] #[derivative(Clone(bound = ""))] struct StructUnnamedUnbound(Rc); #[derive(CloneRef, Clone)] #[clone_ref(bound = "T:CloneRef")] struct StructUnnamedBound(T); #[derive(CloneRef, Clone)] #[clone_ref(bound = "T:CloneRef,U:CloneRef")] struct StructUnnamedBoundTwoPatams(T, U); #[derive(Clone, CloneRef)] #[clone_ref(bound = "T:Clone+Display")] struct StructBoundGeneric(Rc); #[derive(CloneRef, Derivative)] #[derivative(Clone(bound = ""))] // Note: CloneRef "knows" about `Display` bound. struct StructGenericLifetime<'t>(PhantomData<&'t String>); #[derive(CloneRef, Derivative)] #[derivative(Clone(bound = ""))] struct StructWhereClause(Rc) where T: Debug; #[derive(CloneRef, Clone)] #[clone_ref(bound = "T:CloneRef")] // Here derive macro must correctly merge user-provided bound, generics list bound and where clause. struct StructVariousBounds(T) where T: Debug;