parseLine method
Implementation
static LineCol parseLine(String text) {
var match;
if (new RegExp("\\s*at ").hasMatch(text)) {
// chrome syntax
match = new RegExp("\\s*at [^(]+ \\((.*):(\\d+):(\\d+)\\)").firstMatch(text);
} else if (new RegExp("@").hasMatch(text)){
// safari syntax
match = new RegExp("\\s*[^@]+\\@(.*):(\\d+):(\\d+)").firstMatch(text);
} else {
// stack_trace package syntax
match = new RegExp("(.*)\\s+(\\d+):(\\d+)\\s+.*").firstMatch(text);
}
if (match == null) {
return null;
}
var line = int.parse(match[2] as String);
var column = int.parse(match[3] as String);
return new LineCol(line, column);
}