//------------------------------------------------------------------------------
//
//
// [....]
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//------------------------------------------------------------------------------
namespace System.CodeDom.Compiler {
using System;
using System.CodeDom;
using System.Security.Permissions;
using System.Globalization;
///
///
/// Represents a compiler error.
///
///
[Serializable()]
[PermissionSet(SecurityAction.InheritanceDemand, Name="FullTrust")]
public class CompilerError {
private int line;
private int column;
private string errorNumber;
private bool warning = false;
private string errorText;
private string fileName;
///
///
/// Initializes a new instance of .
///
///
public CompilerError() {
this.line = 0;
this.column = 0;
this.errorNumber = string.Empty;
this.errorText = string.Empty;
this.fileName = string.Empty;
}
///
///
/// Initializes a new instance of using the specified
/// filename, line, column, error number and error text.
///
///
public CompilerError(string fileName, int line, int column, string errorNumber, string errorText) {
this.line = line;
this.column = column;
this.errorNumber = errorNumber;
this.errorText = errorText;
this.fileName = fileName;
}
///
///
/// Gets or sets the line number where the source of the error occurs.
///
///
public int Line {
get {
return line;
}
set {
line = value;
}
}
///
///
/// Gets or sets the column number where the source of the error occurs.
///
///
public int Column {
get {
return column;
}
set {
column = value;
}
}
///
///
/// Gets or sets the error number.
///
///
public string ErrorNumber {
get {
return errorNumber;
}
set {
errorNumber = value;
}
}
///
///
/// Gets or sets the text of the error message.
///
///
public string ErrorText {
get {
return errorText;
}
set {
errorText = value;
}
}
///
///
/// Gets or sets
/// a value indicating whether the error is a warning.
///
///
public bool IsWarning {
get {
return warning;
}
set {
warning = value;
}
}
///
///
/// Gets or sets the filename of the source that caused the error.
///
///
public string FileName {
get {
return fileName;
}
set {
fileName = value;
}
}
///
///
/// Overrides Object's ToString.
///
///
public override string ToString() {
if (FileName.Length > 0) {
return string.Format(CultureInfo.InvariantCulture, "{0}({1},{2}) : {3} {4}: {5}",
new object[] {
FileName,
Line,
Column,
IsWarning ? "warning" : "error",
ErrorNumber,
ErrorText});
}
else
return string.Format(CultureInfo.InvariantCulture, "{0} {1}: {2}",
IsWarning ? "warning" : "error",
ErrorNumber,
ErrorText);
}
}
}