Files
Sourcetrail/java_indexer/src/main/java/com/sourcetrail/FileContent.java
T
mlangkabel 5c614c77e2 src: moved Java indexer from JavaSymbolSolver to Eclipse JDT
* added some more tests
* changed 3rd party licenses respectively

fortune cookie message = Your present plans are going to succeed.
2017-09-07 12:40:34 +02:00

52 lines
1.0 KiB
Java

package com.sourcetrail;
import java.util.Arrays;
import java.util.List;
public class FileContent
{
private List<String> m_lines;
public FileContent(String text)
{
m_lines = Arrays.asList(text.split("\\r?\\n"));
}
public Position findStartPosition(String s)
{
return findStartPosition(s, new Position(1, 1));
}
public Position findStartPosition(String s, Position from)
{
int lineIndex = from.line - 1;
int startColumn = from.column - 1;
int column = -1;
while (lineIndex < m_lines.size())
{
column = m_lines.get(lineIndex).indexOf(s, startColumn);
if (column != -1)
{
return new Position(lineIndex + 1, column + 1);
}
startColumn = 0;
lineIndex++;
}
return new Position(0, 0);
}
public Range findRange(String s)
{
return findRange(s, new Position(1, 1));
}
public Range findRange(String s, Position from)
{
Position startPosition = findStartPosition(s, from);
return new Range(
startPosition,
new Position(startPosition.line, startPosition.column + s.length() - 1));
}
}