static void TestGenericParameterFlowsToReturnValue()
        {
            _ = TypeRequiresPublicFields <TestType> .ReturnRequiresPublicFields();

            _ = TypeRequiresPublicFields <TestType> .ReturnRequiresPublicMethods();

            _ = TypeRequiresPublicFields <TestType> .ReturnRequiresNothing();
        }
            public static void Test()
            {
                TypeRequiresPublicFields <T> .Test();

                TypeRequiresPublicMethods <T> .Test();

                TypeRequiresNothing <T> .Test();
            }
        static void RequiresAndCallsOtherRequiresMethods <[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicMethods)] TPublicMethods> ()
        {
            // Normally this would warn, but with the attribute on this method it should be auto-suppressed
            RequiresUnreferencedCodeMethod();

            // Normally this would warn due to incompatible annotations, but with the attribute on this method it should be auto-suppressed
            GetTypeWithPublicMethods().RequiresPublicFields();

            TypeRequiresPublicFields <TPublicMethods> .Method();

            MethodRequiresPublicFields <TPublicMethods> ();
        }
        static void TestSingleGenericParameterOnType()
        {
            TypeRequiresNothing <TestType> .Test();

            TypeRequiresPublicFields <TestType> .Test();

            TypeRequiresPublicMethods <TestType> .Test();

            TypeRequiresPublicFieldsPassThrough <TestType> .Test();

            TypeRequiresNothingPassThrough <TestType> .Test();
        }
Esempio n. 5
0
        static void TestRequiresAttributeWithDynamicallyAccessedMembersOnGenericsEnabled()
        {
            TypeRequiresPublicFields <TypeWithPublicFieldsForGenericType> .Method();

            MethodRequiresPublicFields <TypeWithPublicFieldsForGenericMethod> ();
        }
Esempio n. 6
0
 static void TestGenericParameterFlowsToField()
 {
     TypeRequiresPublicFields <TestType> .TestFields();
 }
Esempio n. 7
0
 public void PublicFieldsMethodLocalVariable()
 {
     TypeRequiresPublicFields <TOuter> t = null;
 }
Esempio n. 8
0
 public void PublicFieldsMethodParameter(TypeRequiresPublicFields <TOuter> param)
 {
 }