| 1 2 25 26 package org.aspectj.asm; 27 28 import java.io.*; 29 30 33 public class SourceLocation implements Serializable { 34 35 private String sourceFilePath = null; 36 private String sourceFileName = null; 37 private int lineNumber = -1; 38 private int endLineNumber = -1; 39 private int columnNumber = 0; 40 41 44 public SourceLocation(String sourceFilePath, 45 int lineNumber, 46 int columnNumber) { 47 this(sourceFilePath, lineNumber, lineNumber, columnNumber); 48 } 49 50 53 public SourceLocation(String sourceFilePath, 54 int beginLineNumber, 55 int endLineNumber, 56 int beginColumnNumber) { 57 if (sourceFilePath != null) this.sourceFilePath = sourceFilePath.replace('\\', '/'); 58 this.lineNumber = beginLineNumber; 59 this.endLineNumber = endLineNumber; 60 this.columnNumber = beginColumnNumber; 61 if (sourceFilePath != null) this.sourceFileName = new File(sourceFilePath).getName(); 62 } 63 64 public int getColumnNumber() { 65 return columnNumber; 66 } 67 68 public int getLineNumber() { 69 return lineNumber; 70 } 71 72 public int getEndLineNumber() { 73 return endLineNumber; 74 } 75 76 public String getSourceFilePath() { 77 return sourceFilePath; 78 } 79 80 public String getSourceFileName() { 81 return sourceFileName; 82 } 83 84 public String toString() { 85 return sourceFilePath + ", begin line: " + lineNumber + ", end line:" + endLineNumber; 86 } 87 } 88 | Popular Tags |