Пример #1
0
            public override Function VisitFunction(Function f)
            {
                if (f == null)
                    return null;

                if (f.Method == f.Name)
                    f.Method = null;

                if (f.AccessModifier.HasValue && f.AccessModifier.Value == AccessModifier.Public)
                    f.AccessModifier = null;
                
                bool? hasMultipleResults = f.HasMultipleResults;
                bool multiple = f.Types.Count > 1;

                if ((hasMultipleResults.GetValueOrDefault() == multiple) && hasMultipleResults.HasValue)
                    f.HasMultipleResults = null;

                if (f.IsComposable == false)
                    f.IsComposable = null;
                
                return base.VisitFunction(f);
            }
Пример #2
0
            public override Function VisitFunction(Function f)
            {
                string str;
                if (f == null)
                    return null;

                writer.WriteStartElement("Function");

                functionIds.TryGetValue(f, out str);

                if (str != null)
                    writer.WriteAttributeString("Id", str);

                if (f.Name != null)
                    writer.WriteAttributeString("Name", f.Name);

                if (f.Method != null)
                    writer.WriteAttributeString("Method", f.Method);

                if (f.AccessModifier.HasValue)
                    writer.WriteAttributeString("AccessModifier", f.AccessModifier.ToString());

                if (f.Modifier.HasValue)
                    writer.WriteAttributeString("Modifier", f.Modifier.ToString());

                if (f.HasMultipleResults.HasValue)
                    writer.WriteAttributeString("HasMultipleResults", ToXmlBooleanString(f.HasMultipleResults));

                if (f.IsComposable.HasValue)
                    writer.WriteAttributeString("IsComposable", ToXmlBooleanString(f.IsComposable));

                isFunctionElementType = true;
                isSubType = false;
                base.VisitFunction(f);
                isFunctionElementType = false;
                writer.WriteEndElement();
                return f;
            }
            public override Function VisitFunction(Function f)
            {
                if (f == null)
                    return null;

                if (f.Method == null)
                    f.Method = f.Name;

                if (!f.AccessModifier.HasValue)
                    f.AccessModifier = 0;

                if (!f.HasMultipleResults.HasValue)
                    f.HasMultipleResults = f.Types.Count > 1;

                if (!f.IsComposable.HasValue)
                    f.IsComposable = false;

                return base.VisitFunction(f);
            }