/* package */ void calculateLineNumbers(SourceCodePositioner positioner, int startOffset, int endOffset) { // end column will be interpreted as inclusive, while endOffset/endIndex // is exclusive endOffset -= 1; this.beginLine = positioner.lineNumberFromOffset(startOffset); this.beginColumn = positioner.columnFromOffset(this.beginLine, startOffset); this.endLine = positioner.lineNumberFromOffset(endOffset); this.endColumn = positioner.columnFromOffset(this.endLine, endOffset); if (this.endColumn < 0) { this.endColumn = 0; } }
DOMLineNumbers(Document document, String xmlString) { this.document = document; this.xmlString = xmlString; this.sourceCodePositioner = new SourceCodePositioner(xmlString); }
public int getLastLineColumn() { return columnFromOffset(getLastLine(), sourceCodeLength - 1); } }
@Override void calculateLineNumbers(SourceCodePositioner positioner) { super.calculateLineNumbers(positioner); this.endLine = positioner.getLastLine(); this.endColumn = positioner.getLastLineColumn(); } }
public SourceCodePositioner(String sourceCode) { analyzeLineOffsets(sourceCode); }
@Override void calculateLineNumbers(SourceCodePositioner positioner) { super.calculateLineNumbers(positioner); this.endLine = positioner.getLastLine(); this.endColumn = positioner.getLastLineColumn(); } }
public SourceCodePositioner(String sourceCode) { analyzeLineOffsets(sourceCode); }
void calculateLineNumbers(SourceCodePositioner positioner) { int startOffset = node.getAbsolutePosition(); int endOffset = startOffset + node.getLength(); this.beginLine = positioner.lineNumberFromOffset(startOffset); this.beginColumn = positioner.columnFromOffset(this.beginLine, startOffset); this.endLine = positioner.lineNumberFromOffset(endOffset); // end column is inclusive this.endColumn = positioner.columnFromOffset(this.endLine, endOffset) - 1; if (this.endColumn < 0) { this.endColumn = 0; } }
public int getLastLineColumn() { return columnFromOffset(getLastLine(), sourceCodeLength - 1); } }
public EcmascriptTreeBuilder(String sourceCode, List<ParseProblem> parseProblems) { this.sourceCodePositioner = new SourceCodePositioner(sourceCode); this.parseProblems = parseProblems; }
private void setBeginLocation(Node n, int index) { if (n != null) { int line = sourceCodePositioner.lineNumberFromOffset(index); int column = sourceCodePositioner.columnFromOffset(line, index); n.setUserData(XmlNode.BEGIN_LINE, line, null); n.setUserData(XmlNode.BEGIN_COLUMN, column, null); } }
public ApexTreeBuilder(String sourceCode) { this.sourceCode = sourceCode; sourceCodePositioner = new SourceCodePositioner(sourceCode); apexDocTokenLocations = buildApexDocTokenLocations(sourceCode).listIterator(); }
private void setEndLocation(Node n, int index) { if (n != null) { int line = sourceCodePositioner.lineNumberFromOffset(index); int column = sourceCodePositioner.columnFromOffset(line, index); n.setUserData(XmlNode.END_LINE, line, null); n.setUserData(XmlNode.END_COLUMN, column, null); } } }
public ApexTreeBuilder(String sourceCode) { this.sourceCode = sourceCode; sourceCodePositioner = new SourceCodePositioner(sourceCode); apexDocTokenLocations = buildApexDocTokenLocations(sourceCode).listIterator(); }
/* package */ void calculateLineNumbers(SourceCodePositioner positioner, int startOffset, int endOffset) { // end column will be interpreted as inclusive, while endOffset/endIndex // is exclusive endOffset -= 1; this.beginLine = positioner.lineNumberFromOffset(startOffset); this.beginColumn = positioner.columnFromOffset(this.beginLine, startOffset); this.endLine = positioner.lineNumberFromOffset(endOffset); this.endColumn = positioner.columnFromOffset(this.endLine, endOffset); if (this.endColumn < 0) { this.endColumn = 0; } }