public void process()

in core/src/com/jediterm/terminal/model/TerminalLine.java [291:314]


  public void process(int y, StyledTextConsumer consumer, int startRow) {
    int x = 0;
    int nulIndex = -1;
    TerminalLineIntervalHighlighting highlighting = myCustomHighlightings.stream().findFirst().orElse(null);
    TerminalLine typeAheadLine = myTypeAheadLine;
    TextEntries textEntries = typeAheadLine != null ? typeAheadLine.myTextEntries : myTextEntries;
    for (TextEntry te : textEntries) {
      if (te.getText().isNul()) {
        if (nulIndex < 0) {
          nulIndex = x;
        }
        consumer.consumeNul(x, y, nulIndex, te.getStyle(), te.getText(), startRow);
      } else {
        if (highlighting != null && te.getLength() > 0 && highlighting.intersectsWith(x, x + te.getLength())) {
          processIntersection(x, y, te, consumer, startRow, highlighting);
        }
        else {
          consumer.consume(x, y, te.getStyle(), te.getText(), startRow);
        }
      }
      x += te.getLength();
    }
    consumer.consumeQueue(x, y, nulIndex < 0 ? x : nulIndex, startRow);
  }