@Override
	public void addToken( char[] array, int start, int end, int tokenType, int startOffset, boolean hyperlink ) {
//		debugInputToken( array, start, end, tokenType, startOffset, hyperlink );

		// ignore invalid token
		if( end < start )
			return;

		if( tokenType == Token.RESERVED_WORD ) {
			// key
			int newTokenType = (array[start] == '@') ? TOKEN_VARIABLE : TOKEN_PROPERTY;
			super.addToken( array, start, end, newTokenType, startOffset, hyperlink );
		} else if( tokenType == Token.LITERAL_STRING_DOUBLE_QUOTE ) {
			// value
			tokenizeValue( array, start, end, startOffset );
		} else if( tokenType == Token.VARIABLE ) {
			// '{variable}'
			super.addToken( array, start, end, TOKEN_TYPE, startOffset, hyperlink );
		} else {
			// comments or operators
			super.addToken( array, start, end, tokenType, startOffset, hyperlink );
		}
	}
This method is only invoked from the super class.
flatlaf-theme-editor/src/main/java/com/formdev/flatlaf/themeeditor/FlatThemeTokenMaker.java