use of lucee.runtime.interpreter.ref.literal.LString in project Lucee by lucee.
the class CFMLExpressionInterpreter method functionArgDeclarationVarString.
/**
* Liest einen gelableten Funktionsparamter ein
* <br />
* EBNF:<br />
* <code>assignOp [":" spaces assignOp];</code>
* @return CFXD Element
* @throws PageException
*/
private Ref functionArgDeclarationVarString() throws PageException {
cfml.removeSpace();
StringBuilder str = new StringBuilder();
String id = null;
while ((id = identifier(false)) != null) {
if (str.length() > 0)
str.append('.');
str.append(id);
cfml.removeSpace();
if (!cfml.forwardIfCurrent('.'))
break;
cfml.removeSpace();
}
cfml.removeSpace();
if (str.length() > 0 && cfml.charAt(cfml.getPos() - 1) != '.')
return new LString(str.toString());
throw new InterpreterException("invalid variable name definition");
}
Aggregations