]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.ltk/src/org/simantics/ltk/Location.java
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.ltk / src / org / simantics / ltk / Location.java
diff --git a/bundles/org.simantics.ltk/src/org/simantics/ltk/Location.java b/bundles/org.simantics.ltk/src/org/simantics/ltk/Location.java
new file mode 100644 (file)
index 0000000..67aa9f9
--- /dev/null
@@ -0,0 +1,45 @@
+package org.simantics.ltk;\r
+\r
+\r
+public class Location {\r
+       ISource source;\r
+       int line;\r
+       int beginPos;\r
+       int endPos;\r
+       \r
+       public Location(ISource source, int line, int beginPos, int endPos) {\r
+               this.source = source;\r
+               this.line = line;\r
+               this.beginPos = beginPos;\r
+               this.endPos = endPos;\r
+       }\r
+       \r
+       public Location(ISource source) {\r
+               this(source, 0, 0, 0);\r
+       }\r
+\r
+       @Override\r
+       public String toString() {\r
+               return line + ":" + beginPos;\r
+       }\r
+       \r
+       public ISource getSource() {\r
+               return source;\r
+       }\r
+       \r
+       public void setSource(ISource source) {\r
+               this.source = source;\r
+       }\r
+       \r
+       public int getLine() {\r
+               return line + source.startLine();\r
+       }\r
+       \r
+       public int getBeginPos() {\r
+               return beginPos + source.startPos();\r
+       }\r
+       \r
+       public int getEndPos() {\r
+               return endPos + source.startPos();\r
+       }\r
+}\r