internal CssAttributeSelector(string localName, string namespacePrefix, CssAttributeMatchOperator matchOperator, CssStringToken matchOperand) : base(DefaultSpecificity) { ArgChecker.AssertArgNotNullOrEmpty(localName, nameof(localName)); ArgChecker.AssertIsTrue <ArgumentNullException>( matchOperator == CssAttributeMatchOperator.Any || matchOperand != null, string.Format(CultureInfo.InvariantCulture, "The {0} is required for match operator '{1}'.", nameof(matchOperand), matchOperator)); _localName = localName; _namespacePrefix = namespacePrefix; _matchOperator = matchOperator; _matchOperand = matchOperand; }
/// <summary> /// Creates selector for elements that have an attribute whose value satisfies a given predicate. /// </summary> /// <param name="localName">The local name of matching attributes.</param> /// <param name="matchOperator">An attribute string value matching operator.</param> /// <param name="matchOperand">The value to which attribute values are matched.</param> /// <returns>The newly created selector.</returns> public static CssAttributeSelector WithAttribute(string localName, CssAttributeMatchOperator matchOperator, string matchOperand) { return(WithAttribute(localName, null, matchOperator, new CssStringToken(CssTokenType.QuotedString | CssTokenType.Quote, matchOperand))); }
public AttributeMatchExpression(CssAttributeMatchOperator @operator, CssStringToken operand) { this.Operator = @operator; this.Operand = operand; }
/// <summary> /// Creates selector for elements that have an attribute whose value satisfies a given predicate. /// </summary> /// <param name="localName">The local name of matching attributes.</param> /// <param name="namespacePrefix">An optional namespace prefix for <paramref name="localName"/>. /// A <c>null</c> value represents any namespace. A <see cref="string.Empty"/> value represents /// no namespace.</param> /// <param name="matchOperator">An attribute string value matching operator.</param> /// <param name="matchOperand">The value to which attribute values are matched.</param> /// <returns>The newly created selector.</returns> internal static CssAttributeSelector WithAttribute(string localName, string namespacePrefix, CssAttributeMatchOperator matchOperator, CssStringToken matchOperand) { return(new CssAttributeSelector(localName, namespacePrefix, matchOperator, matchOperand)); }