char c = line.array[i]; switch(c)
switch(line.array[i])
	public Token markTokens(Segment line, int lineIndex)	{		ensureCapacity(lineIndex);		lastToken = null;		String token = lineIndex == 0 ? null : lineInfo[lineIndex - 1];		int offset = line.offset;		int lastOffset = offset;		int length = line.count + offset;		for(int i = offset; i < length; i++)		{			char c = line.array[i];			switch(c)			{			case '<':				// check if it's a comment				if(length - i > 3)				{					if(jEdit.regionMatches(false,line,i,							       "<!--"))					{						token = COMMENT;						addToken(i - lastOffset,null);						lastOffset = i;						break;					}				}				if(token == null)				{					token = TAG;					addToken(i - lastOffset,null);					lastOffset = i;				}				break;			case '>':				if(token == TAG)				{					token = null;					addToken((i+1) - lastOffset,TAG);					lastOffset = i + 1;				}				else if(token == COMMENT)				{					if(i >= 2 && jEdit.regionMatches(false,						line,i - 2,"-->"))					{						token = null;						addToken((i+1) - lastOffset,							 COMMENT);						lastOffset = i + 1;					}				}				break;			case '&':				if(token == null)				{					token = ENTITY;					addToken(i - lastOffset,null);					lastOffset = i;				}				break;			case ';':				if(token == ENTITY)				{					token = null;					addToken((i+1) - lastOffset,ENTITY);					lastOffset = i + 1;				}				break;			}		}		if(lastOffset != length)			addToken(length - lastOffset,token);		lineInfo[lineIndex] = token;		lastLine = lineIndex;		if(lastToken != null)		{			lastToken.nextValid = false;			return firstToken;		}		else			return null;	}