public void PrettyPrintCharacter(char curChar, StringBuilder output)
        {
            _currentCharacter = curChar;

            ICharacterStrategy strategy = _strategies.ContainsKey(curChar)
                ? _strategies[curChar]
                : new DefaultCharacterStrategy();

            _outputBuilder = output;

            strategy.Execute(this);

            _previousChar = curChar;
        }
 public void AddCharacterStrategy(ICharacterStrategy strategy)
 {
     this.strategies[strategy.ForWhichCharacter] = strategy;
 }
 public void AddCharacterStrategy(ICharacterStrategy strategy)
 {
     _strategies[strategy.ForWhichCharacter] = strategy;
 }
 public void AddCharacterStrategy(ICharacterStrategy strategy) {
     _strategyCatalog[strategy.ForWhichCharacter] = strategy;
 }