public ValueOrParameterRef Get(ScoredPropertyName name) { if (name == null) { throw new ArgumentNullException(nameof(name)); } return(_scoredProperties.Get(name)?.ValueOrParameterRef); }
/// <summary> /// Gets the value of nested <see cref="ScoredProperty"/> specified name. /// </summary> /// <param name="name1">The name of <see cref="ScoredProperty"/>.</param> /// <param name="name2">The name of nested <see cref="ScoredProperty"/>.</param> /// <returns>The value of specified ScoredProperty.</returns> public ValueOrParameterRef Get(ScoredPropertyName name1, ScoredPropertyName name2) { if (name1 == null) { throw new ArgumentNullException(nameof(name1)); } if (name2 == null) { throw new ArgumentNullException(nameof(name2)); } return(_scoredProperties.Get(name1)?.Get(name2)); }
internal ScoredProperty( ScoredPropertyName name, Value value, ParameterRef parameter, ImmutableNamedElementCollection <ScoredProperty> scoredProperties, ImmutableNamedElementCollection <Property> properties) { Name = name; Value = value; ParameterRef = parameter; _scoredProperties = scoredProperties; _properties = properties; }
/// <summary> /// Initializes a new instance of the <see cref="ScoredProperty"/> class. /// </summary> /// <param name="name">Name of ScoredProperty element.</param> /// <param name="elements">Child Property and/or ScoredProperty.</param> public ScoredProperty(ScoredPropertyName name, params ScoredPropertyChild[] elements) { Name = name; var scoredProperties = ImmutableNamedElementCollection.CreateScoredPropertyCollectionBuilder(); var properties = ImmutableNamedElementCollection.CreatePropertyCollectionBuilder(); foreach (var e in elements) { e.Apply( onScoredProperty: x => scoredProperties.Add(x), onProperty: x => properties.Add(x)); } _scoredProperties = scoredProperties.ToImmutable(); _properties = properties.ToImmutable(); }
/// <summary> /// Initializes a new instance of the <see cref="ScoredProperty"/> class. /// </summary> /// <param name="name">Name of the ScoredProperty.</param> /// <param name="parameter">ParameterRef element of the ScoredProperty.</param> /// <param name="elements">Child Property and/or ScoredProperty.</param> public ScoredProperty(ScoredPropertyName name, ParameterRef parameter, params ScoredPropertyChild[] elements) : this(name, elements) { ParameterRef = parameter; }
/// <summary> /// Initializes a new instance of the <see cref="ScoredProperty"/> class. /// </summary> /// <param name="name">Name of the ScoredProperty.</param> /// <param name="value">Value of the ScoredProperty.</param> /// <param name="elements">Child Property and/or ScoredProperty.</param> public ScoredProperty(ScoredPropertyName name, Value value, params ScoredPropertyChild[] elements) : this(name, elements) { Value = value; }
public PrintSchemaScoredProperty(ScoredPropertyName name) { _name = name; }