<commit_before>﻿namespace BullsAndCows.Messenger
{
    using System;

    public class ColoredMessenger : MessengerDecorator
    {
        private const ConsoleColor DefaultColor = ConsoleColor.DarkYellow;
        private const ConsoleColor ErrorColor = ConsoleColor.Red;
        private const ConsoleColor GameWonColor = ConsoleColor.Green;

        public ColoredMessenger(DefaultMessenger messenger)
            : base(messenger)
        {
        }

        public override void ShowStartGameMessage()
        {
            Console.ForegroundColor = ColoredMessenger.DefaultColor;
            base.ShowStartGameMessage();
        }

        public override void ShowRequestInputMessage()
        {
            Console.ForegroundColor = ColoredMessenger.DefaultColor;
            base.Messenger.ShowRequestInputMessage();
        }

        public override void ShowRevealNumberMessage(string number)
        {
            Console.ForegroundColor = ColoredMessenger.DefaultColor;
            base.Messenger.ShowRevealNumberMessage(number);
        }

        public override void ShowWrongGuessMessage(int bulls, int cows)
        {
            Console.ForegroundColor = ColoredMessenger.ErrorColor;
            base.ShowWrongGuessMessage(bulls, cows);
        }

        public override void ShowTopScoreBoardEmptyMessage()
        {
            Console.ForegroundColor = ColoredMessenger.ErrorColor;
            base.ShowTopScoreBoardEmptyMessage();
        }

        public override void ShowInputErrorMessage()
        {
            Console.ForegroundColor = ColoredMessenger.ErrorColor;
            base.ShowInputErrorMessage();
        }

        public override void ShowWinGameMessage(int attemps)
        {
            Console.ForegroundColor = ColoredMessenger.GameWonColor;
            base.ShowWinGameMessage(attemps);
        }

        public override void ShowWinGameMessage(int guessAttemps, int helpCalled)
        {
            Console.ForegroundColor = ColoredMessenger.GameWonColor;
            base.ShowWinGameMessage(guessAttemps, helpCalled);
        }

        public override void ShowExitMessage()
        {
            Console.ForegroundColor = ColoredMessenger.DefaultColor;
            base.ShowExitMessage();
        }
    }
}<commit_msg>bug with endless recursion on calling base class methods - fixed.<commit_after>﻿namespace BullsAndCows.Messenger
{
    using System;

    public class ColoredMessenger : MessengerDecorator
    {
        private const ConsoleColor DefaultColor = ConsoleColor.DarkYellow;
        private const ConsoleColor ErrorColor = ConsoleColor.Red;
        private const ConsoleColor GameWonColor = ConsoleColor.Green;

        public ColoredMessenger(DefaultMessenger messenger)
            : base(messenger)
        {
        }

        public override void ShowStartGameMessage()
        {
            Console.ForegroundColor = ColoredMessenger.DefaultColor;
            base.ShowStartGameMessage();
        }

        public override void ShowRequestInputMessage()
        {
            Console.ForegroundColor = ColoredMessenger.DefaultColor;
            base.Messenger.ShowRequestInputMessage();
        }

        public override void ShowRevealNumberMessage(string number)
        {
            Console.ForegroundColor = ColoredMessenger.DefaultColor;
            base.Messenger.ShowRevealNumberMessage(number);
        }

        public override void ShowWrongGuessMessage(int bulls, int cows)
        {
            Console.ForegroundColor = ColoredMessenger.ErrorColor;
            base.Messenger.ShowWrongGuessMessage(bulls, cows);
        }

        public override void ShowTopScoreBoardEmptyMessage()
        {
            Console.ForegroundColor = ColoredMessenger.ErrorColor;
            base.Messenger.ShowTopScoreBoardEmptyMessage();
        }

        public override void ShowInputErrorMessage()
        {
            Console.ForegroundColor = ColoredMessenger.ErrorColor;
            base.Messenger.ShowInputErrorMessage();
        }

        public override void ShowWinGameMessage(int attemps)
        {
            Console.ForegroundColor = ColoredMessenger.GameWonColor;
            base.Messenger.ShowWinGameMessage(attemps);
        }

        public override void ShowWinGameMessage(int guessAttemps, int helpCalled)
        {
            Console.ForegroundColor = ColoredMessenger.GameWonColor;
            base.Messenger.ShowWinGameMessage(guessAttemps, helpCalled);
        }

        public override void ShowExitMessage()
        {
            Console.ForegroundColor = ColoredMessenger.DefaultColor;
            base.Messenger.ShowExitMessage();
        }
    }
}
{'fraction_non_alphanumeric': 0.062285223367697595, 'fraction_numerical': 0.0, 'mean_word_length': 2.3335719398711525, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2648386', 'n_tokens_mistral': 1206, 'n_tokens_neox': 1135, 'n_words': 209}