public void Increment(IVerse verse) { if (verses.ContainsKey(verse)) verses[verse]++; else verses.Add(verse, 1); }
public static IEnumerable <int> GetAllVerseNumbers(this IVerse verse) { for (var v = verse.StartVerse; v <= verse.EndVerse; v++) { yield return(v); } }
private static void AccumulateTokens(Dictionary<string, TokenVerseFrequency> m, IVerse verse, IEnumerable<Token> tokens) { foreach (var token in tokens) { TokenVerseFrequency tokenVerseFrequency; if (!m.TryGetValue(token.TokenString, out tokenVerseFrequency)) { tokenVerseFrequency = new TokenVerseFrequency(token); m.Add(token, tokenVerseFrequency); } tokenVerseFrequency.Increment(verse); } }
/// <summary> /// Gets all character/delivery pairs for the given verse or bridge. /// </summary> public override HashSet <CharacterSpeakingMode> GetCharacters(int bookId, int chapter, IVerse verseOrBridge, ScrVers versification = null, bool includeAlternatesAndRareQuotes = false, bool includeNarratorOverrides = false) { return(GetCharacters(bookId, chapter, new[] { verseOrBridge }, versification, includeAlternatesAndRareQuotes, includeNarratorOverrides)); }
public HashSet <CharacterSpeakingMode> GetCharacters(int bookId, int chapter, IVerse verseOrBridge, ScrVers versification = null, bool includeAlternatesAndRareQuotes = false, bool includeNarratorOverrides = false) { var result = ControlCharacterVerseData.Singleton.GetCharacters(bookId, chapter, verseOrBridge, versification, includeAlternatesAndRareQuotes, includeNarratorOverrides); var project = m_project.ProjectCharacterVerseData.GetCharacters(bookId, chapter, verseOrBridge, versification); result.UnionWith(project); return(result); }
public abstract HashSet <CharacterSpeakingMode> GetCharacters(int bookId, int chapter, IVerse verseOrBridge, ScrVers versification = null, bool includeAlternatesAndRareQuotes = false, bool includeNarratorOverrides = false);
/// <summary> /// Gets all project-specific character/delivery pairs for the given verse or bridge. /// </summary> public override HashSet <CharacterSpeakingMode> GetCharacters(int bookId, int chapter, IVerse verseOrBridge, ScrVers versification = null, bool includeAlternatesAndRareQuotes = false, bool includeNarratorOverrides = false) { Debug.Assert(!includeAlternatesAndRareQuotes); Debug.Assert(!includeNarratorOverrides); Debug.Assert(versification == null || versification == m_versification); var result = new HashSet <CharacterSpeakingMode>(m_characterDeliveryEqualityComparer); foreach (var v in verseOrBridge.AllVerseNumbers) { var verseRef = new VerseRef(bookId, chapter, v, versification ?? m_versification); verseRef.ChangeVersification(ScrVers.English); result.AddRange(GetSpeakingModesForRef(verseRef)); } return(result); }
public VerseFrequency(IVerse verse, int frequency) : this() { Verse = verse; Frequency = frequency; }