Class ScannerImpl

  • All Implemented Interfaces:
    Iterator<Token>, Scanner

    public final class ScannerImpl
    extends Object
    implements Scanner
     Scanner produces tokens of the following types:
     STREAM-START
     STREAM-END
     COMMENT
     DIRECTIVE(name, value)
     DOCUMENT-START
     DOCUMENT-END
     BLOCK-SEQUENCE-START
     BLOCK-MAPPING-START
     BLOCK-END
     FLOW-SEQUENCE-START
     FLOW-MAPPING-START
     FLOW-SEQUENCE-END
     FLOW-MAPPING-END
     BLOCK-ENTRY
     FLOW-ENTRY
     KEY
     VALUE
     ALIAS(value)
     ANCHOR(value)
     TAG(value)
     SCALAR(value, plain, style)
     Read comments in the Scanner code for more details.
     
    • Constructor Detail

      • ScannerImpl

        public ScannerImpl​(StreamReader reader,
                           LoadSettings settings)
        Deprecated.
        use the other constructor with LoadSettings first
      • ScannerImpl

        public ScannerImpl​(StreamReader reader)
        Deprecated.
        it should be used with LoadSettings
    • Method Detail

      • checkToken

        public boolean checkToken​(Token.ID... choices)
        Check whether the next token is one of the given types.
        Specified by:
        checkToken in interface Scanner
        Parameters:
        choices - token IDs.
        Returns:
        true if the next token can be assigned to a variable of at least one of the given types. Returns false if no more tokens are available.
      • peekToken

        public Token peekToken()
        Return the next token, but do not delete it from the queue.
        Specified by:
        peekToken in interface Scanner
        Returns:
        The token that will be returned on the next call to Scanner.next()
      • next

        public Token next()
        Return the next token, removing it from the queue.
        Specified by:
        next in interface Iterator<Token>
        Specified by:
        next in interface Scanner
        Returns:
        the coming token