public Result <Maybe <string> > PrepareWord(string word, TagCloudCreationOptions options) { var preparedWord = string.Join("", word.Trim() .Where(char.IsLetter)); return(word == string.Empty ? Maybe <string> .None : preparedWord); }
public Result <Bitmap> CreateImage(IEnumerable <string> words, TagCloudCreationOptions options) { return(PrepareWords(words, options) .Then(ws => generator.GenerateStats(ws)) .Then(PrepareStats) .Then(wis => imageCreator.CreateTagCloudImage(wis, options.ImageOptions))); }
public string PrepareWord(string word, TagCloudCreationOptions options) { var preparedWord = string.Join("", word.Trim() .Where(char.IsLetter)); return(word == string.Empty ? null : preparedWord); }
public static Result <IEnumerable <string> > PrepareWords( this IWordPreparer preparer, IEnumerable <string> words, TagCloudCreationOptions options) { return(words.Select(word => preparer.PrepareWord(word, options) .Then(w => w.Unwrap(""))) .AsResult() .Then(i => i.Where(w => w != ""))); }
public Bitmap CreateImage(IEnumerable <string> words, TagCloudCreationOptions options) { words = preparers.Aggregate(words, (current, wordPreparer) => current .Select(w => wordPreparer.PrepareWord(w, options)) .Where(wi => wi != null) .Where(w => w != "") .ToList()); var stats = generator.GenerateStats(words); var maxCount = stats.Max(w => w.Count); var minCount = stats.Min(w => w.Count); var wordPairs = stats.OrderByDescending(wi => wi.Count) .Select(wordInfo => wordInfo.With(GetScale(wordInfo.Count, maxCount, minCount))); return(imageCreator.CreateTagCloudImage(wordPairs, options.ImageOptions)); }
public override Result <Maybe <string> > PrepareWord(string word, TagCloudCreationOptions options) => ProcessWordByTag(word, (tag, w) => tag == PartOfSpeech.Verb ? Maybe <string> .None : Maybe <string> .From(w));
/// <inheritdoc cref="IWordPreparer" /> public Result <Maybe <string> > PrepareWord(string word, TagCloudCreationOptions _) { var preparedWord = word.ToLowerInvariant(); return(word == string.Empty ? Maybe <string> .None : preparedWord); }
public abstract string PrepareWord(string word, TagCloudCreationOptions options);
public string PrepareWord(string word, TagCloudCreationOptions _) => boringWords.Contains(word) ? null : word;
public abstract Result <Maybe <string> > PrepareWord(string word, TagCloudCreationOptions options);
public override string PrepareWord(string word, TagCloudCreationOptions options) => ProcessWordByTag(word, (tag, w) => tag == PartOfSpeech.Verb ? null : w);
private Result <IEnumerable <string> > PrepareWords(IEnumerable <string> words, TagCloudCreationOptions options) { foreach (var preparer in preparers) { var result = preparer.PrepareWords(words, options); if (!result.IsSuccess) { return(result); } words = result.Value; } return(words.AsResult()); }
public Result <Maybe <string> > PrepareWord(string word, TagCloudCreationOptions _) => boringWords.Contains(word) ? Maybe <string> .None : word;