protected override void OnItemsChanged()

in SharpGen/Model/CsStruct.cs [133:153]


        protected override void OnItemsChanged()
        {
            // ReSharper disable once LocalVariableHidesMember
            var hasMarshalType = false;

            foreach (var field in Fields)
            {
                if (field.Relations.Count != 0)
                    hasMarshalType = true;

                var fieldHasMarshalType = field.PublicType != field.MarshalType
                                       || field.HasNativeValueType
                                       || field.IsArray;

                // BoolToInt doesn't generate native Marshaling although they have a different marshaller
                if (fieldHasMarshalType && (!field.IsBoolToInt || field.IsArray))
                    hasMarshalType = true;
            }

            hasMarshalTypeFromFields = hasMarshalType;
        }