/// <summary> /// Visits a String expression /// </summary> /// <param name="stringExpression"></param> protected virtual void VisitStringExpression(StringExpression stringExpression) { }
/// <summary> /// Evaluates the current input as a string /// </summary> /// <returns></returns> public StringExpression EvaluateString() { StringExpression retVal = null; int backup = Index; if (LookAhead("'")) { Match("'"); int start = Index; while (!LookAhead("'") && Index < Buffer.Length) { Index = Index + 1; } if (LookAhead("'")) { Match("'"); retVal = new StringExpression(Root, RootLog, new String(Buffer, start, Index - start - 1), start - 1, Index); } else { Index = backup; } } return retVal; }