/// <summary> /// Tries to create a new StandardUserDataFieldDescriptor, returning <c>null</c> in case the field is not /// visible to script code. /// </summary> /// <param name="fi">The FieldInfo.</param> /// <param name="accessMode">The <see cref="InteropAccessMode" /></param> /// <returns>A new StandardUserDataFieldDescriptor or null.</returns> public static FieldMemberDescriptor TryCreateIfVisible(FieldInfo fi, InteropAccessMode accessMode) { if (fi.GetVisibilityFromAttributes() ?? fi.IsPublic) return new FieldMemberDescriptor(fi, accessMode); return null; }