public void flag(ICodeNode node, RuntimeErrorCode errorCode, Backend backend)
        {
            string lineNumber = null;

            while ((node != null) && (node.GetAttribute(ICodeKeyImplementation.LINE) == null))
                node = node.GetParent();

            backend.sendMessage(new Message(MessageType.RUNTIME_ERROR, new Object[] { errorCode.ToString(), (int)node.GetAttribute(ICodeKeyImplementation.LINE) }));

            if (++errorCount > MAX_ERRORS)
            {
                Console.WriteLine("*** ABORTED AFTER TOO MANY RUNTIME ERRORS.");
                Environment.Exit(-1);
            }
        }
        private void SendSourceLineMessage(ICodeNode node)
        {
            Object lineNumber = node.GetAttribute(ICodeKeyImplementation.LINE);

            if (lineNumber != null)
                sendMessage(new Message(MessageType.SOURCE_LINE, lineNumber));
        }
        private void SendSourceLineMessage(ICodeNode node)
        {
            Object lineNumber = node.GetAttribute(ICodeKeyImplementation.LINE);

            if (lineNumber != null)
            {
                sendMessage(new Message(MessageType.SOURCE_LINE, lineNumber));
            }
        }
예제 #4
0
        public void flag(ICodeNode node, RuntimeErrorCode errorCode, Backend backend)
        {
            string lineNumber = null;

            while ((node != null) && (node.GetAttribute(ICodeKeyImplementation.LINE) == null))
            {
                node = node.GetParent();
            }

            backend.sendMessage(new Message(MessageType.RUNTIME_ERROR, new Object[] { errorCode.ToString(), (int)node.GetAttribute(ICodeKeyImplementation.LINE) }));

            if (++errorCount > MAX_ERRORS)
            {
                Console.WriteLine("*** ABORTED AFTER TOO MANY RUNTIME ERRORS.");
                Environment.Exit(-1);
            }
        }