public override void ReadXml(XmlReader reader) { base.ReadXml(reader); AnnotationTargets = AnnotationTargetSet.Parse(reader.GetAttribute(Attr.targets)); // In older documents, it's possible for the "type" attribute value to be "-1". Type = TypeSafeEnum.ValidateOrDefault(reader.GetEnumAttribute(Attr.type, AnnotationType.text), AnnotationType.text); Lookup = reader.GetAttribute(Attr.lookup); var items = new List <string>(); if (reader.IsEmptyElement) { reader.Read(); } else { reader.Read(); while (reader.IsStartElement(El.value)) { items.Add(reader.ReadElementString()); } reader.ReadEndElement(); } _items = MakeReadOnly(items); }
public AnnotationDef(string name, AnnotationTargetSet annotationTargets, ListPropertyType listPropertyType, IList <String> items) : base(name) { AnnotationTargets = annotationTargets; Type = listPropertyType.AnnotationType; Lookup = listPropertyType.Lookup; _items = MakeReadOnly(items) ?? ImmutableList.Empty <string>(); }
public override void ReadXml(XmlReader reader) { base.ReadXml(reader); AnnotationTargets = AnnotationTargetSet.Parse(reader.GetAttribute(Attr.targets)); Type = reader.GetEnumAttribute(Attr.type, AnnotationType.text); var items = new List <string>(); if (reader.IsEmptyElement) { reader.Read(); } else { reader.Read(); while (reader.IsStartElement(El.value)) { items.Add(reader.ReadElementString()); } reader.ReadEndElement(); } _items = MakeReadOnly(items); }
public AnnotationDef(String name, AnnotationTargetSet annotationTargets, AnnotationType type, IList <String> items) : this(name, annotationTargets, new ListPropertyType(type, null), items) { }
public AnnotationDef(String name, AnnotationTargetSet annotationTargets, AnnotationType type, IList <String> items) : base(name) { AnnotationTargets = annotationTargets; Type = type; _items = MakeReadOnly(items); }