2417956ce42767a4b9a74dd3ad0f04fb687a902c
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI.XamlBuild / src / public / XamlBuild / FieldReferenceExtensions.cs
1 using Mono.Cecil;
2
3 namespace Tizen.NUI.Xaml.Build.Tasks
4 {
5     static class FieldReferenceExtensions
6     {
7         public static FieldReference ResolveGenericParameters(this FieldReference self, TypeReference declaringTypeRef)
8         {
9             var fieldType = self.FieldType;
10             if (fieldType.IsGenericParameter)
11             {
12                 var genericParameter = (GenericParameter)fieldType;
13                 fieldType = ((GenericInstanceType)declaringTypeRef).GenericArguments[genericParameter.Position];
14             }
15             var fieldReference = new FieldReference(self.Name, fieldType)
16             {
17                 DeclaringType = declaringTypeRef
18             };
19             return fieldReference;
20         }
21     }
22 }