Class CharPointer

java.lang.Object
xyz.cofe.text.tparse.CharPointer
All Implemented Interfaces:
java.lang.Comparable<CharPointer>, Pointer<java.lang.Character,​java.lang.Integer,​CharPointer>

public class CharPointer
extends java.lang.Object
implements Pointer<java.lang.Character,​java.lang.Integer,​CharPointer>
Указатель на потом симвлов строки
  • Constructor Summary

    Constructors 
    Constructor Description
    CharPointer​(java.lang.String source)
    Конструктор указателя
    CharPointer​(java.lang.String source, int offset)
    Конструктор указателя
  • Method Summary

    Modifier and Type Method Description
    int compareTo​(CharPointer o)  
    boolean eof()
    Проверка что указаетль находиться за границей списка
    java.util.Optional<java.lang.Character> lookup​(java.lang.Integer offset)
    Предпросмотр n-ой лексемы относительно текущего указателя
    CharPointer move​(java.lang.Integer offset)
    Перемещение указателя n позиций вперед/назад
    java.lang.Integer position()
    Получение значения текущего указателя
    java.lang.String source()
    Возвращает исходный текст
    java.lang.String toString()  

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • CharPointer

      public CharPointer​(java.lang.String source, int offset)
      Конструктор указателя
      Parameters:
      source - исходный текст
      offset - смещение в тексте
    • CharPointer

      public CharPointer​(java.lang.String source)
      Конструктор указателя
      Parameters:
      source - исходный текст
  • Method Details

    • source

      public java.lang.String source()
      Возвращает исходный текст
      Returns:
      исходный текст
    • eof

      public boolean eof()
      Проверка что указаетль находиться за границей списка
      Specified by:
      eof in interface Pointer<java.lang.Character,​java.lang.Integer,​CharPointer>
      Returns:
      true - за границей списка
    • position

      public java.lang.Integer position()
      Получение значения текущего указателя
      Specified by:
      position in interface Pointer<java.lang.Character,​java.lang.Integer,​CharPointer>
      Returns:
      указатель (смещение)
    • move

      public CharPointer move​(java.lang.Integer offset)
      Перемещение указателя n позиций вперед/назад
      Specified by:
      move in interface Pointer<java.lang.Character,​java.lang.Integer,​CharPointer>
      Parameters:
      offset - кол-во позиций
      Returns:
      Новый указатель
    • lookup

      public java.util.Optional<java.lang.Character> lookup​(java.lang.Integer offset)
      Предпросмотр n-ой лексемы относительно текущего указателя
      Specified by:
      lookup in interface Pointer<java.lang.Character,​java.lang.Integer,​CharPointer>
      Parameters:
      offset - Номер лексемы/символа
      Returns:
      Лексема или символ
    • compareTo

      public int compareTo​(CharPointer o)
      Specified by:
      compareTo in interface java.lang.Comparable<CharPointer>
    • toString

      public java.lang.String toString()
      Overrides:
      toString in class java.lang.Object