Interface Pointer<TOK,​POS,​SELF extends Pointer<TOK,​POS,​SELF>>

Type Parameters:
POS - Тип указателя (число или номер строки+номер колонки)
TOK - Тип лексемы
SELF - Собственный тип
All Superinterfaces:
java.lang.Comparable<SELF>
All Known Implementing Classes:
CharPointer, LPointer, TPointer

public interface Pointer<TOK,​POS,​SELF extends Pointer<TOK,​POS,​SELF>>
extends java.lang.Comparable<SELF>
Указатель на список символов/лексем
  • Method Summary

    Modifier and Type Method Description
    boolean eof()
    Проверка что указаетль находиться за границей списка
    java.util.Optional<TOK> lookup​(POS pos)
    Предпросмотр n-ой лексемы относительно текущего указателя
    static <TOK,​ POS,​ SELF extends Pointer<TOK,​ POS,​ SELF>>
    SELF
    max​(SELF... ptrs)
    Выбор максимальный указателя
    static <TOK,​ POS,​ SELF extends Pointer<TOK,​ POS,​ SELF>>
    SELF
    min​(SELF... ptrs)
    Выбор минимального указателя
    SELF move​(POS pos)
    Перемещение указателя n позиций вперед/назад
    POS position()
    Получение значения текущего указателя

    Methods inherited from interface java.lang.Comparable

    compareTo
  • Method Details

    • eof

      boolean eof()
      Проверка что указаетль находиться за границей списка
      Returns:
      true - за границей списка
    • position

      POS position()
      Получение значения текущего указателя
      Returns:
      указатель
    • move

      SELF move​(POS pos)
      Перемещение указателя n позиций вперед/назад
      Parameters:
      pos - кол-во позиций
      Returns:
      Новый указатель
    • lookup

      java.util.Optional<TOK> lookup​(POS pos)
      Предпросмотр n-ой лексемы относительно текущего указателя
      Parameters:
      pos - Номер лексемы/символа
      Returns:
      Лексема или символ
    • min

      static <TOK,​ POS,​ SELF extends Pointer<TOK,​ POS,​ SELF>> SELF min​(SELF... ptrs)
      Выбор минимального указателя
      Type Parameters:
      TOK - лексема (тип)
      POS - позиция (тип)
      SELF - указатель
      Parameters:
      ptrs - указатели, должен быть указан хотя бы один
      Returns:
      минимальный указатель
    • max

      static <TOK,​ POS,​ SELF extends Pointer<TOK,​ POS,​ SELF>> SELF max​(SELF... ptrs)
      Выбор максимальный указателя
      Type Parameters:
      TOK - лексема (тип)
      POS - позиция (тип)
      SELF - указатель
      Parameters:
      ptrs - указатели, должен быть указан хотя бы один
      Returns:
      максимальный указатель