public static ContentWriter CreateReplace( ContentDisplayStyle contentDisplayStyle, string input, ReplaceOptions replaceOptions, ContentWriterOptions options, TextWriter?textWriter = null, MatchOutputInfo?outputInfo = null) { switch (contentDisplayStyle) { case ContentDisplayStyle.Value: case ContentDisplayStyle.ValueDetail: return(new ValueReplacementWriter(input, replaceOptions, options, textWriter, outputInfo)); case ContentDisplayStyle.Line: return(new LineReplacementWriter(input, replaceOptions, options, textWriter)); case ContentDisplayStyle.AllLines: return(new AllLinesReplacementWriter(input, replaceOptions, options, textWriter)); case ContentDisplayStyle.UnmatchedLines: throw new NotSupportedException($"Value '{contentDisplayStyle}' is not supported."); default: throw new InvalidOperationException($"Unknown enum value '{contentDisplayStyle}'."); } }
public static AskReplacementWriter Create( ContentDisplayStyle contentDisplayStyle, string input, ReplaceOptions replaceOptions, Lazy <TextWriter>?lazyWriter, ContentWriterOptions options, MatchOutputInfo?outputInfo) { switch (contentDisplayStyle) { case ContentDisplayStyle.Value: case ContentDisplayStyle.ValueDetail: return(new AskValueReplacementWriter(input, replaceOptions, lazyWriter, options, outputInfo)); case ContentDisplayStyle.Line: return(new AskLineReplacementWriter(input, replaceOptions, lazyWriter, options)); case ContentDisplayStyle.UnmatchedLines: case ContentDisplayStyle.AllLines: throw new InvalidOperationException(); default: throw new InvalidOperationException($"Unknown enum value '{contentDisplayStyle}'."); } }
public static bool TryParseReplaceOptions( IEnumerable <string> values, string optionName, string?replacement, MatchEvaluator?matchEvaluator, [NotNullWhen(true)] out ReplaceOptions?replaceOptions) { replaceOptions = null; var replaceFlags = ReplaceFlags.None; if (values != null && !TryParseAsEnumFlags( values, optionName, out replaceFlags, provider: OptionValueProviders.ReplaceFlagsProvider)) { return(false); } var functions = ReplaceFunctions.None; if ((replaceFlags & ReplaceFlags.TrimStart) != 0) { functions |= ReplaceFunctions.TrimStart; } if ((replaceFlags & ReplaceFlags.TrimEnd) != 0) { functions |= ReplaceFunctions.TrimEnd; } if ((replaceFlags & ReplaceFlags.ToLower) != 0) { functions |= ReplaceFunctions.ToLower; } if ((replaceFlags & ReplaceFlags.ToUpper) != 0) { functions |= ReplaceFunctions.ToUpper; } if (matchEvaluator != null) { replaceOptions = new ReplaceOptions( matchEvaluator: matchEvaluator, functions: functions, cultureInvariant: (replaceFlags & ReplaceFlags.CultureInvariant) != 0); } else { replaceOptions = new ReplaceOptions( replacement: replacement, functions: functions, cultureInvariant: (replaceFlags & ReplaceFlags.CultureInvariant) != 0); } return(true); }
protected override void WriteEndMatch(Capture capture) { var match = (Match)capture; string result = ReplaceOptions.Replace(match); WriteReplacement(match, result); }
public AskLineReplacementWriter( string input, ReplaceOptions replaceOptions, Lazy <TextWriter> lazyWriter, ContentWriterOptions options) : base(input, replaceOptions, lazyWriter, options) { MatchingLineCount = 0; }
public LineReplacementWriter( string input, ReplaceOptions replaceOptions, ContentWriterOptions options = null, TextWriter textWriter = null) : base(input, options) { ReplaceOptions = replaceOptions; _textWriter = textWriter; }
public TextWriterContentWriter( string input, ReplaceOptions replaceOptions, TextWriter textWriter, ContentWriterOptions options) : base(input, options) { ReplaceOptions = replaceOptions; _textWriter = textWriter; }
protected AskReplacementWriter( string input, ReplaceOptions replaceOptions, Lazy <TextWriter> lazyWriter, ContentWriterOptions options) : base(input, options) { ReplaceOptions = replaceOptions; _lazyWriter = lazyWriter; }
public AskValueReplacementWriter( string input, ReplaceOptions replaceOptions, Lazy <TextWriter> lazyWriter, ContentWriterOptions options, MatchOutputInfo outputInfo) : base(input, replaceOptions, lazyWriter, options) { OutputInfo = outputInfo; }
public AskLineReplacementWriter( string input, ReplaceOptions replaceOptions, Lazy <TextWriter>?lazyWriter, ContentWriterOptions options, bool isInteractive) : base(input, replaceOptions, lazyWriter, options, isInteractive) { MatchingLineCount = 0; }
public ValueReplacementWriter( string input, ReplaceOptions replaceOptions, ContentWriterOptions options, TextWriter?textWriter = null, MatchOutputInfo?outputInfo = null) : base(input, options, outputInfo: outputInfo) { ReplaceOptions = replaceOptions; _textWriter = textWriter; }
public AskValueReplacementWriter( string input, ReplaceOptions replaceOptions, Lazy <TextWriter>?lazyWriter, ContentWriterOptions options, MatchOutputInfo?outputInfo, bool isInteractive) : base(input, replaceOptions, lazyWriter, options, isInteractive) { OutputInfo = outputInfo; }
protected AskReplacementWriter( string input, ReplaceOptions replaceOptions, Lazy <TextWriter>?lazyWriter, ContentWriterOptions options, bool isInteractive) : base(input, options) { ReplaceOptions = replaceOptions; IsInteractive = isInteractive; _lazyWriter = lazyWriter; }