Esempio n. 1
0
 private void TryAddPropertyResolver(
     MemberResolverBinding binding,
     List <FieldResolverDescriptor> resolverDescriptors)
 {
     if (binding.FieldMember is PropertyInfo p)
     {
         FieldReference fieldReference = new FieldReference(
             binding.TypeName, binding.FieldName);
         resolverDescriptors.Add(FieldResolverDescriptor
                                 .CreateSourceProperty(fieldReference, p.ReflectedType, p));
     }
 }
Esempio n. 2
0
 private void TryAddMethodResolver(
     MemberResolverBinding binding,
     List <FieldResolverDescriptor> resolverDescriptors)
 {
     if (binding.FieldMember is MethodInfo m)
     {
         FieldReference fieldReference = new FieldReference(binding.TypeName, binding.FieldName);
         bool           isAsync        = typeof(Task).IsAssignableFrom(m.ReturnType);
         IReadOnlyCollection <FieldResolverArgumentDescriptor> argumentDescriptors =
             FieldResolverDiscoverer.CreateResolverArgumentDescriptors(
                 m, m.ReflectedType, m.ReflectedType);
         resolverDescriptors.Add(FieldResolverDescriptor.CreateSourceMethod(
                                     fieldReference, m.ReflectedType, m, isAsync,
                                     argumentDescriptors));
     }
 }