示例#1
0
 public void OnErrorOccurred(object sender, ErrorEvent error)
 {
     if (errorsContainer.Contains(error))
     {
         return;
     }
     errorsContainer.Add(error);
 }
        public void DispatchWarning(SourcePosition position, string description)
        {
            ErrorEventHandler handler = Error;

            if (handler != null)
            {
                var e = new ErrorEvent(position, description, 0);
                e.IsError = false;
                handler(this, e);
            }
        }
示例#3
0
        public static string WriteCompilerError(string source, ErrorEvent ev)
        {
            var type = ev.IsError ? "Error" : "Warning";

            if (ev.Position != null && ev.Position.Position >= 0)
            {
                return string.Format(type + ": {0} {1} [Line {2}, Column {3}]",
                    ev.Description,
                    ErrorEvent.GetTextByCode(ev.Code),
                    GetLineNumber(source, ev.Position.Position),
                    GetColumnNumber(source, ev.Position.Position));
            }
            else
            {
                return string.Format(type + ": {0} {1}",
                    ev.Description,
                    ErrorEvent.GetTextByCode(ev.Code));
            }
        }