示例#1
0
        static private void HandleError(int eOffset, string eValue, ErrorKind ekind)
        {
            Error e = new Error();

            e.line       = SourceViewModel.GetLine(eOffset);
            e.lineOffset = SourceViewModel.GetLineOffset(eOffset);
            e.length     = eValue.Length;
            e.kind       = ekind;
            switch (ekind)
            {
            case ErrorKind.ANNONOTCLOSED:
                e.infomation = "注释未闭合";
                break;

            case ErrorKind.NUMBERERROR:
                e.infomation = string.Format("数字 {0} 格式错误", eValue);
                break;

            case ErrorKind.INVALIDCHAR:
                e.infomation = string.Format("无法识别的字符: {0}", eValue);
                break;

            case ErrorKind.NESTBRA:
                e.infomation = "出现嵌套的注释";
                break;

            default:
                e.infomation = string.Format("未知类型错误: {0}", eValue);
                break;
            }
        }
示例#2
0
        static private void ErrorHandle(Token t, string info)
        {
            Error err = new Error();

            err.line       = SourceViewModel.GetLine(t.offset);
            err.lineOffset = SourceViewModel.GetLineOffset(t.offset);
            err.length     = t.length;
            err.infomation = info;
            ErrorViewModel.getInstance().addError(err);
        }