string BlockComment()
{
if (ParseString ("/*") == null) {
return null;
}
int startLineIndex = lineIndex;
var commentResult = ParseUntil (String("*/"), _commentBlockEndCharacter, null);
if (!endOfInput) {
ParseString ("*/");
}
// Count the number of lines that were inside the block, and replicate them as newlines
// so that the line indexing still works from the original source
if (commentResult != null) {
return new string ('\n', lineIndex - startLineIndex);
}
// No comment at all
else {
return null;
}
}