Ejemplo n.º 1
0
 private IList<FieldDefinition> FindMatchingFields(TypeDefinition type, MethodDefinition defaultConstructor, AbstractConstructorAttributeBase constructorAttribute)
 {
     var matches = new List<FieldDefinition>();
       var initializedFields = EnumerateInitializedFields(defaultConstructor);
       foreach (var field in type.Fields) {
      if (field.IsStatic) {
         continue;
      }
      var fieldInfo = new FieldInfo {
         IsInitOnly = field.IsInitOnly,
         HasNonDefaultFieldInitializer = initializedFields.Contains(field)
      };
      if (constructorAttribute.Condition(fieldInfo)) {
         matches.Add(field);
      }
       }
       return matches;
 }