コード例 #1
0
 /// <summary>
 /// Enables the basic name and value attribute comparer during diffing.
 /// </summary>
 public static IDiffingStrategyCollection AddAttributeComparer(this IDiffingStrategyCollection builder)
 {
     builder.AddMatcher(PostfixedAttributeMatcher.Match, StrategyType.Specialized);
     builder.AddComparer(AttributeComparer.Compare, StrategyType.Generalized);
     builder.AddComparer(IgnoreAttributeComparer.Compare, StrategyType.Specialized);
     return(builder);
 }
        /// <summary>
        /// Sets up the diffing process using the default options.
        /// </summary>
        public static IDiffingStrategyCollection AddDefaultOptions(this IDiffingStrategyCollection builder)
        {
            return(builder
                   .IgnoreDiffAttributes()
                   .IgnoreComments()
                   .AddSearchingNodeMatcher()
                   .AddCssSelectorMatcher()
                   .AddAttributeNameMatcher()
                   .AddElementComparer()
                   .AddIgnoreElementSupport()
                   .AddStyleSheetComparer()
                   .AddTextComparer(WhitespaceOption.Normalize, ignoreCase: false)
                   .AddAttributeComparer()
                   .AddClassAttributeComparer()
                   .AddBooleanAttributeComparer(BooleanAttributeComparision.Strict)
                   .AddStyleAttributeComparer());

            ;
        }
コード例 #3
0
 /// <summary>
 /// Enables the special style attributes comparer during diffing.
 /// </summary>
 public static IDiffingStrategyCollection AddStyleAttributeComparer(this IDiffingStrategyCollection builder)
 {
     builder.AddComparer(StyleAttributeComparer.Compare, StrategyType.Specialized);
     return(builder);
 }
コード例 #4
0
 /// <summary>
 /// Enables the special boolean attribute comparer during diffing.
 /// </summary>
 public static IDiffingStrategyCollection AddBooleanAttributeComparer(this IDiffingStrategyCollection builder, BooleanAttributeComparision booleanAttributeComparision)
 {
     builder.AddComparer(new BooleanAttributeComparer(booleanAttributeComparision).Compare, StrategyType.Specialized);
     return(builder);
 }
コード例 #5
0
 /// <summary>
 /// Enables the name-based attribute matching strategy during diffing.
 /// </summary>
 public static IDiffingStrategyCollection AddAttributeNameMatcher(this IDiffingStrategyCollection builder)
 {
     builder.AddMatcher(AttributeNameMatcher.Match, StrategyType.Generalized);
     return(builder);
 }
コード例 #6
0
 /// <summary>
 /// Enables the basic comment comparer, that checks if two nodes are comment nodes. It does not check the
 /// content of the comment.
 /// </summary>
 public static IDiffingStrategyCollection AddCommentComparer(this IDiffingStrategyCollection builder)
 {
     builder.AddComparer(CommentComparer.Compare, StrategyType.Generalized);
     return(builder);
 }
コード例 #7
0
 /// <summary>
 /// Enables ignoring of the special "diff"-attributes during diffing.
 /// </summary>
 public static IDiffingStrategyCollection IgnoreDiffAttributes(this IDiffingStrategyCollection builder)
 {
     builder.AddFilter(IgnoreDiffAttributesFilter.Filter, StrategyType.Specialized);
     return(builder);
 }
コード例 #8
0
 /// <summary>
 /// Enables the one-to-one node-matching strategy during diffing.
 /// </summary>
 public static IDiffingStrategyCollection AddTextComparer(this IDiffingStrategyCollection builder, WhitespaceOption whitespaceOption, bool ignoreCase)
 {
     builder.AddFilter(new TextNodeFilter(whitespaceOption).Filter, StrategyType.Specialized);
     builder.AddComparer(new TextNodeComparer(whitespaceOption, ignoreCase).Compare, StrategyType.Specialized);
     return(builder);
 }
コード例 #9
0
 /// <summary>
 /// Enables the ignore element `diff:ignore` attribute during diffing.
 /// </summary>
 /// <param name="builder"></param>
 /// <returns></returns>
 public static IDiffingStrategyCollection AddIgnoreElementSupport(this IDiffingStrategyCollection builder)
 {
     builder.AddComparer(IgnoreElementComparer.Compare, StrategyType.Specialized);
     return(builder);
 }
コード例 #10
0
 /// <summary>
 /// Enables the CSS-selector matcher strategy during diffing.
 /// </summary>
 public static IDiffingStrategyCollection AddCssSelectorMatcher(this IDiffingStrategyCollection builder)
 {
     builder.AddMatcher(CssSelectorElementMatcher.Match, StrategyType.Specialized);
     return(builder);
 }
コード例 #11
0
 /// <summary>
 /// Enables the forward-searching node-matcher strategy during diffing.
 /// </summary>
 public static IDiffingStrategyCollection AddSearchingNodeMatcher(this IDiffingStrategyCollection builder)
 {
     builder.AddMatcher(ForwardSearchingNodeMatcher.Match, StrategyType.Generalized);
     return(builder);
 }
コード例 #12
0
 /// <summary>
 /// Enables the one-to-one node-matching strategy during diffing.
 /// </summary>
 public static IDiffingStrategyCollection AddOneToOneNodeMatcher(this IDiffingStrategyCollection builder)
 {
     builder.AddMatcher(OneToOneNodeMatcher.Match, StrategyType.Generalized);
     return(builder);
 }