protected void updateState(@Nullable TextMateLexer.Token token, int fallbackOffset) {
    if (token != null) {
      myTokenType = token.scope == TextMateScope.WHITESPACE ? TokenType.WHITE_SPACE : new TextMateElementType(token.scope);
      myTokenStart = token.startOffset;
      myTokenEnd = Math.min(token.endOffset, myEndOffset);
      myCurrentOffset = token.endOffset;
      myRestartable = token.restartable;
    }
    else {
      myTokenType = null;
      myTokenStart = fallbackOffset;
      myTokenEnd = fallbackOffset;
      myCurrentOffset = fallbackOffset;
      myRestartable = true;
    }
  }
protected void updateState(@Nullable TextMateLexer.Token token, int fallbackOffset)