Class StreamReader


  • public class StreamReader
    extends java.lang.Object
    Reader: checks if code points are in allowed range. Returns '\0' when end of data has been reached.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private char[] buffer  
      private static int BUFFER_SIZE  
      private int column  
      private int dataLength
      Real length of the data in dataWindow
      private int[] dataWindow
      Read data (as a moving window for input stream)
      private boolean eof  
      private int index
      index is only required to implement 1024 key length restriction http://yaml.org/spec/1.1/#simple key/ It must count code points, but it counts characters (to be fixed)
      private int line  
      private java.lang.String name  
      private int pointer
      The variable points to the current position in the data array
      private java.io.Reader stream  
    • Constructor Summary

      Constructors 
      Constructor Description
      StreamReader​(java.io.Reader reader)  
      StreamReader​(java.lang.String stream)  
    • Field Detail

      • name

        private java.lang.String name
      • stream

        private final java.io.Reader stream
      • dataWindow

        private int[] dataWindow
        Read data (as a moving window for input stream)
      • dataLength

        private int dataLength
        Real length of the data in dataWindow
      • pointer

        private int pointer
        The variable points to the current position in the data array
      • eof

        private boolean eof
      • index

        private int index
        index is only required to implement 1024 key length restriction http://yaml.org/spec/1.1/#simple key/ It must count code points, but it counts characters (to be fixed)
      • line

        private int line
      • column

        private int column
      • buffer

        private char[] buffer
    • Constructor Detail

      • StreamReader

        public StreamReader​(java.lang.String stream)
      • StreamReader

        public StreamReader​(java.io.Reader reader)
    • Method Detail

      • isPrintable

        public static boolean isPrintable​(java.lang.String data)
      • isPrintable

        public static boolean isPrintable​(int c)
      • getMark

        public Mark getMark()
      • forward

        public void forward()
      • forward

        public void forward​(int length)
        read the next length characters and move the pointer. if the last character is high surrogate one more character will be read
        Parameters:
        length - amount of characters to move forward
      • peek

        public int peek()
      • peek

        public int peek​(int index)
        Peek the next index-th code point
        Parameters:
        index - to peek
        Returns:
        the next index-th code point
      • prefix

        public java.lang.String prefix​(int length)
        peek the next length code points
        Parameters:
        length - amount of the characters to peek
        Returns:
        the next length code points
      • prefixForward

        public java.lang.String prefixForward​(int length)
        prefix(length) immediately followed by forward(length)
        Parameters:
        length - amount of characters to get
        Returns:
        the next length code points
      • ensureEnoughData

        private boolean ensureEnoughData()
      • ensureEnoughData

        private boolean ensureEnoughData​(int size)
      • update

        private void update()
      • getColumn

        public int getColumn()
      • getIndex

        public int getIndex()
        Returns:
        current position as number (in characters) from the beginning of the stream
      • getLine

        public int getLine()