} else {
cVarStartDelim = c_varStartDelim;
}
optr = optr_dbg;
InsideWhitespace iwLine = new InsideWhitespace(ssbLine, crlao.uSOB);
if(isComment(iwLine)) {
return;
}
//This line is not a comment. It is either the first line
//in a variable, or the second or subsequent line in the
//value.
int iDelimIW = -1;
int iDelimActual = -1;
if(iwLine.length() > 0) {
iDelimIW = crlao.usVarDelims.getIdx1stUnesc2BEsc(iwLine);
iDelimActual = iwLine.getActualIdx(iDelimIW);
}
if(iDelimIW == -1) {
//No delimiters exist on this line. This line is
//either not part of any variable, value or comment, or
//this is the second or subsequent line in a value.
if(iVarStartLine != -1) {
//This is the second or subsequent line in a
//variable's value.
sVarValue = ssbLine.toString();
} else {
//This line is not the second/subsequent line in a
//value. It is a line *between* variables or
//comments.
if(iwLine.length() > 0) {
String sMLCEnd = sES;
if(iwLine.charAt(iwLine.length() - 1) == crlao.crc.getCRCDelimiters().getMLCEnd()) {
//Special condition, for a clearer error message
sMLCEnd = ". Also note: The last character in this line is a multi-line comment end delimiter ('" + crlao.crc.getCRCDelimiters().getMLCEnd() + "'). If this is meant to be the end of a multi-line comment, it was never started";
}
throwCFX(iwLine, "Stray text found. This line is not part of any variable or comment, but contains non-whitespace characters. Note that cr_config.getCRCVariable().is1stLineWSEmptyString() equals " + crlao.crc.getCRCVariable().is1stLineWSEmptyString() + sMLCEnd);
}
}
//This line is whitespace only, and can be safely ignored.
} else {
//This line contains an unescaped variable delimiter
//and is therefore the first in a variable's value.
sVarName = ssbLine.substring(0, iDelimActual);
cDelimiter = ssbLine.charAt(iDelimActual);
iVarStartLine = iLineNumber;
sobVarStartName = new SOBString(sVarName);
cVarStartDelim = cDelimiter;
if(iDelimIW == (iwLine.length() - 1)) {
//The delimiter is the last non-whitespace character on
//the line. There is no space after it for other
//unescaped variable delimiters to exist.
if(iDelimActual == (ssbLine.length() - 1)) {