Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
128 commits
Select commit Hold shift + click to select a range
7d5c7c3
WindowsRuntimeMarshallingInfo.TryGetInfo in Type ConvertToManaged
kythant Nov 24, 2025
e4d59d9
ChkPt
kythant Nov 25, 2025
7748119
ChkPt
kythant Nov 25, 2025
ff83e55
Surgey on test cases: Will Revert
kythant Nov 25, 2025
f66b075
Add WinRT.SourceGenerator2 to UnitTest.csproj
kythant Nov 26, 2025
090f420
Remove IReference
kythant Nov 26, 2025
fa571b0
Fix typemap not being used.
manodasanW Nov 26, 2025
9f9ea00
Some unit tests
kythant Nov 27, 2025
5e99fe0
It should be AssemblyQualifiedName
kythant Nov 27, 2025
51b89c3
metadata scenario TypeMarshaling test
kythant Dec 1, 2025
3b2e3b8
ProxyType out parameter WIP
kythant Dec 2, 2025
bc5a718
CustomTypeReference GOTO
kythant Dec 2, 2025
b6fa2a4
Fix up conditions on Custom vs Metadata types
kythant Dec 2, 2025
62cf4dc
ExtractTypeName should take in ReadOnlySpan
kythant Dec 2, 2025
3879ccf
Revert "Surgey on test cases: Will Revert"
kythant Dec 2, 2025
b5746d2
Add more primitive type cases
kythant Dec 2, 2025
5161eae
Refactor/Fix trimmed metadata test
kythant Dec 3, 2025
62f26be
TODO comment
kythant Dec 3, 2025
a39b1de
comments
kythant Dec 3, 2025
066bbee
Refactor TypeMarshaller.ConvertToUnmanagedUnsafe logic
Sergio0694 Dec 3, 2025
815627d
Optimize type name slicing with JIT unrolling
Sergio0694 Dec 3, 2025
7bc9c56
Refactor TypeReference to use ReadOnlySpan<char> for Name
Sergio0694 Dec 3, 2025
2ea14e9
Add WindowsRuntimeMetadata attributes to ABI types
Sergio0694 Dec 3, 2025
0d3e4f9
Add TypeMapAssociation and WinRT metadata to ABI interfaces
Sergio0694 Dec 3, 2025
89e68a9
Improve TypeMarshaller to handle C# primitive types
Sergio0694 Dec 3, 2025
05fc31e
TestTypePropertyWithIServiceProvider()
kythant Dec 3, 2025
7c43b44
Refactor metadata type detection in marshalling info
Sergio0694 Dec 4, 2025
278fa32
Refactor TypeMarshaller to improve type kind detection
Sergio0694 Dec 4, 2025
53b0c7f
Merge branch 'user/kythant/TypeHandling' of https://github.com/micros…
kythant Dec 4, 2025
e87da3f
Tests for Timespan and CLosable
kythant Dec 4, 2025
f14aa7e
Reapply "Surgey on test cases: Will Revert"
kythant Dec 4, 2025
ca8dd48
Add back ToString()
kythant Dec 4, 2025
58f71da
Add 'WindowsRuntimeMetadataTypeNameAttribute'
Sergio0694 Dec 4, 2025
a719f84
Add 'WindowsRuntimeMetadataTypeMapGroup'
Sergio0694 Dec 4, 2025
30d7657
Add WindowsRuntimeMetadataInfo for type metadata caching
Sergio0694 Dec 5, 2025
89977a2
Clarify XML documentation in WindowsRuntimeMarshallingInfo
Sergio0694 Dec 5, 2025
415500d
Add PublicType property to WindowsRuntimeMetadataInfo
Sergio0694 Dec 5, 2025
d025fe1
Improve handling of nullable types in type marshalling
Sergio0694 Dec 5, 2025
c99bcfd
Fix merge conflict in Type.cs
kythant Dec 5, 2025
50ef998
supress IL3050:Calling members annotated with 'RequiresDynamicCodeAtt…
kythant Dec 5, 2025
ba5e619
WindowsRuntimeMetadataTypeMapGroup:
kythant Dec 5, 2025
b2c9cb8
Test cases with TestComponent and TestComponentCsharp
kythant Dec 5, 2025
a3cd499
TestComponentCsharp Class Test
kythant Dec 5, 2025
47b6af2
refactor code gen on disable and restore on IL2026
kythant Dec 5, 2025
858bd0a
Add WindowsRuntimeReferenceTypeAttribute class
Sergio0694 Dec 5, 2025
0679191
Add ReferenceType property to WindowsRuntimeMarshallingInfo
Sergio0694 Dec 5, 2025
6bb2e67
Adding WindowsRuntimeReferenceType attribute on CodeWriters.h
kythant Dec 5, 2025
88b6d3a
Merge branch 'user/kythant/TypeHandling' of https://github.com/micros…
kythant Dec 5, 2025
f4a2151
Refactor reference type handling in marshalling info
Sergio0694 Dec 5, 2025
11c2c81
Add support for metadata type name caching and retrieval
Sergio0694 Dec 5, 2025
20ab9f2
Refactor reference type handling in marshalling info
Sergio0694 Dec 5, 2025
2318cf4
Enhance Type marshalling for Windows Runtime types
Sergio0694 Dec 5, 2025
91340b6
Add WindowsRuntime type mapping attributes
Sergio0694 Dec 5, 2025
ea6c7f4
Improve runtime class name retrieval logic
Sergio0694 Dec 6, 2025
9165db5
Convert TestProperty tests to use InlineData
kythant Dec 6, 2025
ecb7f10
Merge branch 'user/kythant/TypeHandling' of https://github.com/micros…
kythant Dec 6, 2025
411f047
Handle custom-mapped interface types in TypeMarshaller
Sergio0694 Dec 6, 2025
4ffdc4e
Add WindowsRuntimeMetadataTypeMapGroup associations
Sergio0694 Dec 6, 2025
cfb46c2
Merge branch 'user/kythant/TypeHandling' of https://github.com/micros…
kythant Dec 6, 2025
684bd3c
Fix Expected result for Timespan and Type
kythant Dec 6, 2025
49d8522
Add WindowsRuntimeMetadataTypeName attribute in Object.cs
kythant Dec 6, 2025
fecf1f4
Update type map attribute to MetadataTypeMapGroup
Sergio0694 Dec 6, 2025
5558480
Remove redundant metadata attribute from Object.cs
Sergio0694 Dec 6, 2025
3faa61f
Add new TypeMapAssemblyTarget attributes
Sergio0694 Dec 6, 2025
b44e52d
Merge branch 'staging/3.0' into user/kythant/TypeHandling
Sergio0694 Dec 6, 2025
6eba922
Update ABI for INotifyDataErrorInfo to use fully qualified names
Sergio0694 Dec 6, 2025
8d4ca16
Refactor placeholder marshaller attribute implementation
Sergio0694 Dec 6, 2025
ecf418a
Refactor placeholder attribute for dynamic interface castable
Sergio0694 Dec 6, 2025
adceccf
Replace PlaceholderNullAgileReference with NullPlaceholder
Sergio0694 Dec 6, 2025
93f5f3a
Fix tests
manodasanW Dec 7, 2025
1a5a08d
Add WindowsRuntimeMappedType attributes to ABI types
Sergio0694 Dec 7, 2025
1a9d36d
Add WindowsRuntimeMappedMetadataAttribute class
Sergio0694 Dec 7, 2025
836429b
Update metadata type detection for custom-mapped types
Sergio0694 Dec 7, 2025
1ed06a9
Replace WindowsRuntimeMetadata with WindowsRuntimeMappedMetadata
Sergio0694 Dec 7, 2025
609ca5e
Rename TypeToMarshallingInfoTable to TypeToMetadataInfoTable
Sergio0694 Dec 7, 2025
c7874d8
Add metadata attributes to EventRegistrationToken struct
Sergio0694 Dec 7, 2025
eeee82b
Refactor ABI type mappings to use non-global type names
Sergio0694 Dec 7, 2025
45f1442
Merge branch 'user/kythant/TypeHandling' of https://github.com/micros…
kythant Jan 2, 2026
eb18880
Refactor marshalling info retrieval for anonymous objects
Sergio0694 Jan 6, 2026
cffc5cf
Enhance TypeMarshaller with special case handling
Sergio0694 Jan 7, 2026
a573064
Improve type marshalling and remove redundant attributes
Sergio0694 Jan 7, 2026
f508bbc
Merge branch 'user/kythant/TypeHandling' of https://github.com/micros…
kythant Jan 8, 2026
2935cb9
Fix runtime class name retrieval in marshalling info
Sergio0694 Jan 9, 2026
eb27e0f
Merge branch 'user/kythant/TypeHandling' of https://github.com/micros…
kythant Jan 9, 2026
1b90d1e
Fix IXamlServiceProvider not being excluded correctly
kythant Jan 9, 2026
7a084ce
Merge - incomplete build
kythant Jan 20, 2026
1731292
Fix Namespaces conflicts from merge
kythant Jan 20, 2026
b0224f6
Enable TypeMarshaling Test case for NoMetadata scenario and add a new…
kythant Jan 21, 2026
5bc3cdd
Try not building TypeMarshalingTest in arm or arm64
kythant Jan 21, 2026
d3d1084
Add test case for Nullable and Exception
kythant Jan 22, 2026
38ddf1b
Resolve Merge
kythant Jan 24, 2026
7352f88
Handle KeyValuePair<,> in TypeMarshaller
Sergio0694 Jan 25, 2026
62d0c0d
Merge branch 'staging/3.0' of https://github.com/microsoft/CsWinRT in…
kythant Jan 26, 2026
bfe7cec
Add custom case and fix IReferenceName update
kythant Jan 26, 2026
c39efda
Merge branch 'staging/3.0' of https://github.com/microsoft/CsWinRT in…
kythant Jan 26, 2026
123e418
Add explicit error handling for missing mapped type attribute
Sergio0694 Jan 26, 2026
fa02d31
Remove obsolete TODO comments in TypeMarshaller
Sergio0694 Jan 26, 2026
b4f6ad2
Add support for WindowsRuntimeMetadataTypeMapGroup attributes
Sergio0694 Jan 26, 2026
cb68a8c
Refactor TypeMarshaller type reference logic
Sergio0694 Jan 26, 2026
1c5e5b4
Add support for WindowsRuntimeMetadataTypeNameAttribute
Sergio0694 Jan 27, 2026
eea43b0
Merge branch 'staging/3.0' into user/kythant/TypeHandling
Sergio0694 Jan 28, 2026
d1764fc
Add support for WindowsRuntimeMappedMetadataAttribute
Sergio0694 Jan 28, 2026
d4cd76a
Add KeyValuePair.Proxy method and update usage
Sergio0694 Jan 28, 2026
f95be69
Add IsGenericType property to TypeSignatureExtensions
Sergio0694 Jan 28, 2026
746831f
Refactor type name generation and add MetadataTypeNameGenerator
Sergio0694 Jan 28, 2026
2522b8c
Refactor delegate and KeyValuePair type map attribute methods
Sergio0694 Jan 28, 2026
11b769e
Clarify comment on handling metadata type names
Sergio0694 Jan 28, 2026
99d1aa5
Fix typo in MetadataTypeNameGenerator method names
Sergio0694 Jan 28, 2026
30f5bc7
Add metadataTypeName to TypeMapAttributes calls
Sergio0694 Jan 28, 2026
ca1ff40
Fix attribute argument to use metadataTypeName
Sergio0694 Jan 28, 2026
3f4aa57
Refactor type map parameters for clarity and extensibility
Sergio0694 Jan 28, 2026
39ebdc0
Update proxy type definition for interface and SZ array types
Sergio0694 Jan 28, 2026
24b9409
Fix metadata type map assignments in type builders
Sergio0694 Jan 28, 2026
851e11a
Refactor proxy type generation for SZ arrays and interfaces
Sergio0694 Jan 28, 2026
98287a3
Simplify cref in XML doc for proxyType parameter
Sergio0694 Jan 28, 2026
169357a
Update proxy attribute emission for interface types
Sergio0694 Jan 29, 2026
9489c8e
Refactor TypeMarshaller value type handling logic
Sergio0694 Jan 29, 2026
36cba1f
Refactor ABI System.Collections interfaces and marshallers
Sergio0694 Jan 29, 2026
68df9c8
Add WindowsRuntimeMapped attributes to DataErrorsChangedEventArgs
Sergio0694 Jan 29, 2026
5da3731
Refactor marshaller attribute resolution and type mapping
Sergio0694 Jan 29, 2026
95eb5ad
Refactor type mapping for event args and update marshallers
Sergio0694 Jan 29, 2026
d3c77b7
Refactor delegate type mapping to use DelegateType method
Sergio0694 Jan 29, 2026
5d7512c
Add ClassType helper for custom-mapped class types
Sergio0694 Jan 29, 2026
dd5e60f
Merge branch 'staging/3.0' into user/kythant/TypeHandling
Sergio0694 Jan 29, 2026
fbdf92a
Merge branch 'staging/3.0' into user/kythant/TypeHandling
Sergio0694 Jan 29, 2026
f65c310
Support 'IBindableVectorView' for RCWs and 'Type' marshalling (#2207)
Sergio0694 Jan 30, 2026
b947347
Merge branch 'staging/3.0' into user/kythant/TypeHandling
Sergio0694 Jan 30, 2026
829d998
Adjust marshaller type resolution and errors
Sergio0694 Jan 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,7 @@ public static void EmitPrivateProjectionsTypeMapAssemblyTargetAttributes(SourceP
{
_ = builder.AppendLine($"""
[assembly: global::System.Runtime.InteropServices.TypeMapAssemblyTarget<global::WindowsRuntime.InteropServices.WindowsRuntimeComWrappersTypeMapGroup>("{assemblyName}")]
[assembly: global::System.Runtime.InteropServices.TypeMapAssemblyTarget<global::WindowsRuntime.InteropServices.WindowsRuntimeMetadataTypeMapGroup>("{assemblyName}")]
[assembly: global::System.Runtime.InteropServices.TypeMapAssemblyTarget<global::WindowsRuntime.InteropServices.DynamicInterfaceCastableImplementationTypeMapGroup>("{assemblyName}")]
""");
}
Expand All @@ -130,6 +131,11 @@ public static void EmitDefaultTypeMapAssemblyTargetAttributes(SourceProductionCo
[assembly: global::System.Runtime.InteropServices.TypeMapAssemblyTarget<global::WindowsRuntime.InteropServices.WindowsRuntimeComWrappersTypeMapGroup>("WinRT.Interop")]
[assembly: global::System.Runtime.InteropServices.TypeMapAssemblyTarget<global::WindowsRuntime.InteropServices.WindowsRuntimeComWrappersTypeMapGroup>("WinRT.Projection")]
[assembly: global::System.Runtime.InteropServices.TypeMapAssemblyTarget<global::WindowsRuntime.InteropServices.WindowsRuntimeComWrappersTypeMapGroup>("WinRT.Runtime2")]

[assembly: global::System.Runtime.InteropServices.TypeMapAssemblyTarget<global::WindowsRuntime.InteropServices.WindowsRuntimeMetadataTypeMapGroup>("WinRT.Interop")]
[assembly: global::System.Runtime.InteropServices.TypeMapAssemblyTarget<global::WindowsRuntime.InteropServices.WindowsRuntimeMetadataTypeMapGroup>("WinRT.Projection")]
[assembly: global::System.Runtime.InteropServices.TypeMapAssemblyTarget<global::WindowsRuntime.InteropServices.WindowsRuntimeMetadataTypeMapGroup>("WinRT.Runtime2")]

[assembly: global::System.Runtime.InteropServices.TypeMapAssemblyTarget<global::WindowsRuntime.InteropServices.DynamicInterfaceCastableImplementationTypeMapGroup>("WinRT.Interop")]
[assembly: global::System.Runtime.InteropServices.TypeMapAssemblyTarget<global::WindowsRuntime.InteropServices.DynamicInterfaceCastableImplementationTypeMapGroup>("WinRT.Projection")]
[assembly: global::System.Runtime.InteropServices.TypeMapAssemblyTarget<global::WindowsRuntime.InteropServices.DynamicInterfaceCastableImplementationTypeMapGroup>("WinRT.Runtime2")]
Expand Down
1 change: 1 addition & 0 deletions src/Projections/Test/Test.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
<PropertyGroup>
<CsWinRTExcludes>
TestComponentCSharp.AnotherAssembly;
TestComponentCSharp.TestTypeTrimmed;
</CsWinRTExcludes>
<CsWinRTIncludes>
TestComponent;
Expand Down
57 changes: 57 additions & 0 deletions src/Tests/FunctionalTests/TypeMarshaling/Program.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
using System;
using System.Runtime.InteropServices;
using System.Runtime.InteropServices.Marshalling;
using TestComponent;
using TestComponentCSharp;

SetTypeProperties setTypeProperties = new();

// Convert to Managed Metadata Marshalling Info Test Case
String expectedMetadataPropertyInfo = "TestComponentCSharp.TestType Metadata";
CustomTestType TestType = new();
if (setTypeProperties.GetPropertyInfoTestType(TestType) != expectedMetadataPropertyInfo)
{
return 101;
}

// Convert to Managed Trimmed Metadata NoMetadataTypeInfo Test Case
// Goes into NoMetadataTypeInfo codepath for Type.cs ConvertToManaged
// Do not reference TestComponentCSharp::TestType1 in managed because it needs to be trimmed to test the Metadata TypeKind scenario
String expectedMetadataPropertyInfoTrimmed = "TestComponentCSharp.TestTypeTrimmed Metadata";
CustomTestType TestTypeTrimmed = new();
if (setTypeProperties.GetPropertyInfoTestTypeTrimmed(TestTypeTrimmed) != expectedMetadataPropertyInfoTrimmed)
{
return 102;
}

// Custom TypeKind test case
String expectedCustomTypePropertyInfo = "CustomTestType, TypeMarshaling, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null Custom";
SetTypeProperties customSetTypeProperties = new();
if (setTypeProperties.GetPropertyInfoWithType(typeof(CustomTestType)) != expectedCustomTypePropertyInfo)
{
return 103;
}

// Primitive TypeKind test case
String expectedPrimitiveTypePropertyInfo = "Int32 Primitive";
SetTypeProperties primitiveSetTypeProperties = new();
if (setTypeProperties.GetPropertyInfoWithType(typeof(int)) != expectedPrimitiveTypePropertyInfo)
{
return 104;
}

// Primitive TypeKind test case 2
String expectedPrimitiveTypePropertyInfo2 = "Int64 Primitive";
SetTypeProperties primitiveSetTypeProperties2 = new();
if (setTypeProperties.GetPropertyInfoWithType(typeof(System.Int64)) != expectedPrimitiveTypePropertyInfo2)
{
return 105;
}

return 100;

sealed class CustomTestType : IType
{
public System.Type TypeProperty { get; set; }
}

Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"profiles": {
"TypeMarshaling": {
"commandName": "Project",
"nativeDebugging": true
}
}
}
16 changes: 16 additions & 0 deletions src/Tests/FunctionalTests/TypeMarshaling/TypeMarshaling.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFrameworks>$(FunctionalTestsBuildTFMs)</TargetFrameworks>
<Platforms>x86;x64</Platforms>
<RuntimeIdentifiers>win-x86;win-x64</RuntimeIdentifiers>
<PublishProfileFullPath>$(MSBuildProjectDirectory)\..\PublishProfiles\win-$(Platform).pubxml</PublishProfileFullPath>
</PropertyGroup>

<ItemGroup>
<ProjectReference Include="..\..\..\Authoring\WinRT.SourceGenerator2\WinRT.SourceGenerator2.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" SetPlatform="Platform=AnyCPU" />
<ProjectReference Include="..\..\..\Projections\Test\Test.csproj" />
<ProjectReference Include="..\..\..\Projections\Windows\Windows.csproj" />
</ItemGroup>

</Project>
53 changes: 53 additions & 0 deletions src/Tests/TestComponentCSharp/ManualProjectionTestClasses.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,62 @@
#include "CustomBindableVectorTest.g.cpp"
#include "CustomBindableObservableVectorTest.g.cpp"
#include "CustomIteratorTest.g.cpp"
#include "SetTypeProperties.g.cpp"
#include <winrt/Windows.UI.Xaml.Interop.h>

namespace winrt::TestComponentCSharp::implementation
{
SetTypeProperties::SetTypeProperties()
{

}

winrt::hstring SetTypeProperties::GetPropertyInfoTestTypeTrimmed(IType testObject)
{
testObject.TypeProperty(winrt::xaml_typename<TestComponentCSharp::TestTypeTrimmed>());
winrt::hstring kind;
switch (testObject.TypeProperty().Kind)
{
case Windows::UI::Xaml::Interop::TypeKind::Custom:
kind = winrt::hstring(L"Custom");
break;
case Windows::UI::Xaml::Interop::TypeKind::Metadata:
kind = winrt::hstring(L"Metadata");
break;
default:
kind = winrt::hstring(L"Primitive");
break;
}
return testObject.TypeProperty().Name + L" " + kind;
}

winrt::hstring SetTypeProperties::GetPropertyInfoTestType(IType testObject)
{
testObject.TypeProperty(winrt::xaml_typename<TestComponentCSharp::TestType>());
winrt::hstring kind;
switch (testObject.TypeProperty().Kind)
{
case Windows::UI::Xaml::Interop::TypeKind::Custom:
kind = winrt::hstring(L"Custom");
break;
case Windows::UI::Xaml::Interop::TypeKind::Metadata:
kind = winrt::hstring(L"Metadata");
break;
default:
kind = winrt::hstring(L"Primitive");
break;
}
return testObject.TypeProperty().Name + L" " + kind;
}


winrt::hstring SetTypeProperties::GetPropertyInfoWithType(winrt::Windows::UI::Xaml::Interop::TypeName typeName)
{
TestComponentCSharp::Class TestObject;
TestObject.TypeProperty(typeName);
return TestObject.GetTypePropertyAbiName() + L" " + TestObject.GetTypePropertyKind();
}

CustomBindableIteratorTest::CustomBindableIteratorTest()
{

Expand Down
15 changes: 15 additions & 0 deletions src/Tests/TestComponentCSharp/ManualProjectionTestClasses.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,19 @@
#include "CustomBindableVectorTest.g.h"
#include "CustomBindableObservableVectorTest.g.h"
#include "CustomIteratorTest.g.h"
#include "SetTypeProperties.g.h"
#include <winrt/Windows.UI.Xaml.Interop.h>

namespace winrt::TestComponentCSharp::implementation
{
struct SetTypeProperties : SetTypePropertiesT<SetTypeProperties>
{
SetTypeProperties();
winrt::hstring GetPropertyInfoTestType(IType testObject);
winrt::hstring GetPropertyInfoTestTypeTrimmed(IType testObject);
winrt::hstring GetPropertyInfoWithType(winrt::Windows::UI::Xaml::Interop::TypeName typeName);
};

struct CustomBindableIteratorTest : CustomBindableIteratorTestT<CustomBindableIteratorTest>
{
CustomBindableIteratorTest();
Expand Down Expand Up @@ -72,6 +82,11 @@ namespace winrt::TestComponentCSharp::implementation

namespace winrt::TestComponentCSharp::factory_implementation
{
struct SetTypeProperties : SetTypePropertiesT<SetTypeProperties, implementation::SetTypeProperties>
{

};

struct CustomBindableIteratorTest : CustomBindableIteratorTestT<CustomBindableIteratorTest, implementation::CustomBindableIteratorTest>
{

Expand Down
25 changes: 25 additions & 0 deletions src/Tests/TestComponentCSharp/TestComponentCSharp.idl
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,11 @@ namespace TestComponentCSharp
Int32 DrawTo();
}

interface IType
{
Windows.UI.Xaml.Interop.TypeName TypeProperty{ get; set; };
};

interface IProperties1
{
Int32 ReadWriteProperty{ get; };
Expand Down Expand Up @@ -152,6 +157,26 @@ namespace TestComponentCSharp
static ISingleton Instance;
}

[default_interface]
runtimeclass SetTypeProperties
{
SetTypeProperties();
String GetPropertyInfoTestTypeTrimmed(IType testObject);
String GetPropertyInfoTestType(IType testObject);
String GetPropertyInfoWithType(Windows.UI.Xaml.Interop.TypeName typeName);
}

// Do not reference TestComponentCSharp::TestTypeTrimmed in managed because it needs to be trimmed to test the Metadata TypeKind scenario in the TypeHandling project
runtimeclass TestTypeTrimmed
{
void f();
}

runtimeclass TestType
{
void f();
}

[default_interface, gc_pressure(Windows.Foundation.Metadata.GCPressureAmount.High)]
runtimeclass Class :
Windows.Foundation.IStringable
Expand Down
119 changes: 0 additions & 119 deletions src/Tests/UnitTest/OOPObject.cs

This file was deleted.

Loading