Esempio n. 1
0
 public DFA7(BaseRecognizer recognizer)
 {
     this.recognizer     = recognizer;
     this.decisionNumber = 7;
     this.eot            = DFA7_eot;
     this.eof            = DFA7_eof;
     this.min            = DFA7_min;
     this.max            = DFA7_max;
     this.accept         = DFA7_accept;
     this.special        = DFA7_special;
     this.transition     = DFA7_transition;
 }
Esempio n. 2
0
        public void GetFullOperation_ThrowsUnrecognizedOperationException()
        {
            var moqOperation = new Mock <IOperation>();

            moqOperation.Setup(operation => operation.StringPresentation).Returns("+");
            var operationsList = new List <IOperation> {
                moqOperation.Object
            };
            IRecognizer recognizer = new BaseRecognizer(operationsList);

            Assert.Throws <UnrecognizedOperationException>(() => recognizer.GetFullOperation("-23"));
        }
 public DFA9(BaseRecognizer recognizer)
 {
     base.recognizer = recognizer;
     decisionNumber  = 9;
     eot             = DFA9_eot;
     eof             = DFA9_eof;
     min             = DFA9_min;
     max             = DFA9_max;
     accept          = DFA9_accept;
     special         = DFA9_special;
     transition      = DFA9_transition;
 }
Esempio n. 4
0
 public DFA4(BaseRecognizer recognizer, IDebugEventListener dbg)
 {
     this.recognizer     = recognizer;
     this.decisionNumber = 4;
     this.eot            = DFA4_eot;
     this.eof            = DFA4_eof;
     this.min            = DFA4_min;
     this.max            = DFA4_max;
     this.accept         = DFA4_accept;
     this.special        = DFA4_special;
     this.transition     = DFA4_transition;
 }
Esempio n. 5
0
 public DFA2(BaseRecognizer recognizer, SpecialStateTransitionHandler specialStateTransition)
     : base(specialStateTransition)
 {
     this.recognizer     = recognizer;
     this.decisionNumber = 2;
     this.eot            = DFA2_eot;
     this.eof            = DFA2_eof;
     this.min            = DFA2_min;
     this.max            = DFA2_max;
     this.accept         = DFA2_accept;
     this.special        = DFA2_special;
     this.transition     = DFA2_transition;
 }
        public void GetFullOperation_ReturnsRecognizedOperation()
        {
            var moqOperation = new Mock <IOperation>();

            moqOperation.Setup(operation => operation.StringPresentation).Returns("+");
            var operationsList = new List <IOperation> {
                moqOperation.Object
            };
            IRecognizer recognizer = new BaseRecognizer(operationsList);

            var result = recognizer.GetFullOperation("+56");

            Assert.AreEqual("+", result);
        }
        public void Recognize_ReturnsCorrectNumberOfOperands()
        {
            var moqFirstOperation = new Mock <IOperation>();

            moqFirstOperation.Setup(operation => operation.StringPresentation).Returns("+");
            var moqSecondOperation = new Mock <IOperation>();

            moqSecondOperation.Setup(operation => operation.StringPresentation).Returns("-");
            var operationsList = new List <IOperation> {
                moqFirstOperation.Object, moqSecondOperation.Object
            };
            IRecognizer recognizer = new BaseRecognizer(operationsList);

            var result = recognizer.Recognize("2+6-8");

            Assert.AreEqual(5, result.Count);
        }
Esempio n. 8
0
        public void Recognize_ReturnsCorrectRecognizedOperands()
        {
            var moqFirstOperation = new Mock <IOperation>();

            moqFirstOperation.Setup(operation => operation.StringPresentation).Returns("+");
            var moqSecondOperation = new Mock <IOperation>();

            moqSecondOperation.Setup(operation => operation.StringPresentation).Returns("-");
            var operationsList = new List <IOperation> {
                moqFirstOperation.Object, moqSecondOperation.Object
            };
            IRecognizer recognizer = new BaseRecognizer(operationsList);

            var result = recognizer.Recognize("2+6-8");

            Assert.Equal(new[] { "2", "+", "6", "-", "8" }, result);
        }
Esempio n. 9
0
        static void Main()
        {
            // var pluginReader = new OperationPluginReader();
            List <IOperation> operations;

            try
            {
                operations = GetOperations();
                // operations = pluginReader.ReadPluginsFrom(Environment.CurrentDirectory + "\\Plugins");
            }
            catch (DirectoryNotFoundException)
            {
                Console.WriteLine("Ошибка! Отсутсвует директория Plugins");
                Console.WriteLine("Нажмите любую клавишу, чтобы выйти...");
                Console.ReadKey();
                return;
            }
            var recognizer = new BaseRecognizer();
            var calculator = new PostfixCalculator(recognizer.CraeteOperations(operations));

            ShowAvailableOperations(calculator.GetAvailableOperations());
            var reader = new ConsoleInputReader();

            while (true)
            {
                try
                {
                    var result = calculator.Calculate(reader.GetExpression());
                    Console.WriteLine($"Результат: {result}");
                }
                catch (UnrecognizedOperationException e)
                {
                    Console.WriteLine(e.Message);
                }
                Console.WriteLine("Нажмите Enter, чтобы продолжить или Esc, чтобы выйти");
                if (Console.ReadKey().Key == ConsoleKey.Escape)
                {
                    return;
                }
            }
        }
Esempio n. 10
0
 public DebugEventSocketProxy(BaseRecognizer recognizer, int port, ITreeAdaptor adaptor) {
     this.grammarFileName = recognizer.GrammarFileName;
     this.adaptor = adaptor;
     this.port = port;
 }
Esempio n. 11
0
 public DebugEventSocketProxy(BaseRecognizer recognizer, ITreeAdaptor adaptor) :
     this(recognizer, DefaultDebuggerPort, adaptor) {
 }
Esempio n. 12
0
 public DebugEventSocketProxy(BaseRecognizer recognizer, int port, ITreeAdaptor adaptor)
 {
     this.grammarFileName = recognizer.GrammarFileName;
     this.adaptor         = adaptor;
     this.port            = port;
 }
Esempio n. 13
0
 public DebugEventSocketProxy(BaseRecognizer recognizer, ITreeAdaptor adaptor) :
     this(recognizer, DefaultDebuggerPort, adaptor)
 {
 }
Esempio n. 14
0
 public DebugEventSocketProxy( BaseRecognizer recognizer, ITreeAdaptor adaptor ) :
     this( recognizer, DEFAULT_DEBUGGER_PORT, adaptor )
 {
 }
Esempio n. 15
0
 public DebugEventSocketProxy(BaseRecognizer recognizer, ITreeAdaptor adaptor) :
     this(recognizer, DEFAULT_DEBUGGER_PORT, adaptor)
 {
 }
Esempio n. 16
0
 public DFA4(BaseRecognizer recognizer) : this(recognizer, null)
 {
 }