public void AddComponentAttributeProperty(IAttributeProperty attributeProperty) { var coalesceValue = attributeProperty.Value; if (attributeProperty.Collection != null && attributeProperty.Collection is IEnumerableExpression<object> enumerableExpression) { coalesceValue = (INotifyReversableExpression<object>)Observable.Reversable(() => enumerableExpression.FirstOrDefault()); } Coalesce(coalesceValue); }
private void LoadProperties(IClass @class, HashSet <IClass> alreadyImplemented) { if (!alreadyImplemented.Add(@class)) { return; } foreach (var attConstraint in @class.AttributeConstraints) { LoadAttributeConstraint(attConstraint); } foreach (var refConstraint in @class.ReferenceConstraints) { LoadReferenceConstraint(refConstraint); } foreach (var att in @class.Attributes) { var property = LoadAttribute(att); if (att == @class.Identifier && _identifierProperty == null) { _identifierProperty = property; _identifierScope = @class.IdentifierScope; } } foreach (var reference in @class.References) { LoadReference(reference); } foreach (var baseType in @class.BaseTypes) { LoadProperties(baseType, alreadyImplemented); } }
/// <inheritdoc/> public void AddAttributeProperty(IAttributeProperty property) { readOnly.Assert(false); properties.Add(property); }