com.fasterxml.jackson.dataformat.yaml

## Class YAMLParser

- java.lang.Object
- - com.fasterxml.jackson.core.JsonParser
  - - com.fasterxml.jackson.core.base.ParserMinimalBase
    - - com.fasterxml.jackson.core.base.ParserBase
      - - com.fasterxml.jackson.dataformat.yaml.YAMLParser

- All Implemented Interfaces:
    com.fasterxml.jackson.core.Versioned, Closeable, AutoCloseable

      public class YAMLParser
      extends com.fasterxml.jackson.core.base.ParserBase

  `JsonParser` implementation used to expose YAML documents in form that allows other Jackson functionality to process YAML content, such as binding POJOs to and from it, and building tree representations.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `YAMLParser.Feature` Enumeration that defines all togglable features for YAML parsers.

    - ### Nested classes/interfaces inherited from class com.fasterxml.jackson.core.JsonParser

      `com.fasterxml.jackson.core.JsonParser.NumberType`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected String` | `_currentAnchor` Anchor for the value that parser currently points to: in case of structured types, value whose first token current token is.
    `protected String` | `_currentFieldName` Let's also have a local copy of the current field name
    `protected boolean` | `_currentIsAlias` Flag that is set when current token was derived from an Alias (reference to another value's anchor)
    `protected int` | `_formatFeatures`
    `protected org.yaml.snakeyaml.events.Event` | `_lastEvent` Keep track of the last event read, to get access to Location info
    `protected com.fasterxml.jackson.core.ObjectCodec` | `_objectCodec` Codec used for data binding when (if) requested.
    `protected Reader` | `_reader` Need to keep track of underlying `Reader` to be able to auto-close it (if required to)
    `protected String` | `_textValue` We need to keep track of text values.
    `protected org.yaml.snakeyaml.parser.ParserImpl` | `_yamlParser`
    `protected org.yaml.snakeyaml.resolver.Resolver` | `_yamlResolver`

    - ### Fields inherited from class com.fasterxml.jackson.core.base.ParserBase

      `_binaryValue, _byteArrayBuilder, _closed, _currInputProcessed, _currInputRow, _currInputRowStart, _expLength, _fractLength, _inputEnd, _inputPtr, _intLength, _ioContext, _nameCopied, _nameCopyBuffer, _nextToken, _numberBigDecimal, _numberBigInt, _numberDouble, _numberInt, _numberLong, _numberNegative, _numTypesValid, _parsingContext, _textBuffer, _tokenInputCol, _tokenInputRow, _tokenInputTotal`

    - ### Fields inherited from class com.fasterxml.jackson.core.base.ParserMinimalBase

      `_currToken, _lastClearedToken, BD_MAX_INT, BD_MAX_LONG, BD_MIN_INT, BD_MIN_LONG, BI_MAX_INT, BI_MAX_LONG, BI_MIN_INT, BI_MIN_LONG, CHAR_NULL, INT_0, INT_9, INT_APOS, INT_ASTERISK, INT_BACKSLASH, INT_COLON, INT_COMMA, INT_CR, INT_e, INT_E, INT_HASH, INT_LBRACKET, INT_LCURLY, INT_LF, INT_MINUS, INT_PERIOD, INT_PLUS, INT_QUOTE, INT_RBRACKET, INT_RCURLY, INT_SLASH, INT_SPACE, INT_TAB, MAX_ERROR_TOKEN_LENGTH, MAX_INT_D, MAX_INT_L, MAX_LONG_D, MIN_INT_D, MIN_INT_L, MIN_LONG_D, NO_BYTES, NO_INTS, NR_BIGDECIMAL, NR_BIGINT, NR_DOUBLE, NR_FLOAT, NR_INT, NR_LONG, NR_UNKNOWN`

    - ### Fields inherited from class com.fasterxml.jackson.core.JsonParser

      `_features, _requestPayload`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `YAMLParser(com.fasterxml.jackson.core.io.IOContext ctxt, com.fasterxml.jackson.core.util.BufferRecycler br, int parserFeatures, int formatFeatures, com.fasterxml.jackson.core.ObjectCodec codec, Reader reader)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `_closeInput()`
    `protected com.fasterxml.jackson.core.JsonToken` | `_decodeNumberScalar(String value, int len)`
    `protected com.fasterxml.jackson.core.JsonToken` | `_decodeScalar(org.yaml.snakeyaml.events.ScalarEvent scalar)`
    `protected com.fasterxml.jackson.core.JsonLocation` | `_locationFor(org.yaml.snakeyaml.error.Mark m)`
    `protected Boolean` | `_matchYAMLBoolean(String value, int len)`
    `protected int` | `_parseIntValue()`
    `protected void` | `_parseNumericValue(int expType)`
    `boolean` | `canReadObjectId()`
    `boolean` | `canReadTypeId()`
    `com.fasterxml.jackson.core.JsonParser` | `configure(YAMLParser.Feature f, boolean state)` Method for enabling or disabling specified CSV feature (check `YAMLParser.Feature` for list of features)
    `com.fasterxml.jackson.core.JsonParser` | `disable(YAMLParser.Feature f)` Method for disabling specified CSV feature (check `YAMLParser.Feature` for list of features)
    `com.fasterxml.jackson.core.JsonParser` | `enable(YAMLParser.Feature f)` Method for enabling specified CSV feature (check `YAMLParser.Feature` for list of features)
    `byte[]` | `getBinaryValue(com.fasterxml.jackson.core.Base64Variant variant)`
    `com.fasterxml.jackson.core.ObjectCodec` | `getCodec()`
    `String` | `getCurrentAnchor()` Deprecated. Since 2.3 (was added in 2.1) -- use `getObjectId()` instead
    `com.fasterxml.jackson.core.JsonLocation` | `getCurrentLocation()`
    `String` | `getCurrentName()`
    `Object` | `getEmbeddedObject()`
    `int` | `getFormatFeatures()`
    `String` | `getObjectId()`
    `String` | `getText()`
    `int` | `getText(Writer writer)`
    `char[]` | `getTextCharacters()`
    `int` | `getTextLength()`
    `int` | `getTextOffset()`
    `com.fasterxml.jackson.core.JsonLocation` | `getTokenLocation()`
    `String` | `getTypeId()`
    `boolean` | `hasTextCharacters()`
    `boolean` | `isCurrentAlias()` Method that can be used to check whether current token was created from YAML Alias token (reference to an anchor).
    `boolean` | `isEnabled(YAMLParser.Feature f)` Method for checking whether specified CSV `YAMLParser.Feature` is enabled.
    `com.fasterxml.jackson.core.JsonToken` | `nextToken()`
    `com.fasterxml.jackson.core.JsonParser` | `overrideFormatFeatures(int values, int mask)`
    `void` | `setCodec(com.fasterxml.jackson.core.ObjectCodec c)`
    `com.fasterxml.jackson.core.Version` | `version()`

    - ### Methods inherited from class com.fasterxml.jackson.core.base.ParserBase

      `_checkStdFeatureChanges, _decodeBase64Escape, _decodeBase64Escape, _decodeEscaped, _eofAsNextChar, _finishString, _getByteArrayBuilder, _getSourceReference, _handleEOF, _releaseBuffers, _reportMismatchedEndMarker, close, convertNumberToBigDecimal, convertNumberToBigInteger, convertNumberToDouble, convertNumberToInt, convertNumberToLong, disable, enable, getBigIntegerValue, getCurrentValue, getDecimalValue, getDoubleValue, getFloatValue, getIntValue, getLongValue, getNumberType, getNumberValue, getParsingContext, getTokenCharacterOffset, getTokenColumnNr, getTokenLineNr, growArrayBy, isClosed, isNaN, loadMore, loadMoreGuaranteed, overrideCurrentName, overrideStdFeatures, reportInvalidBase64Char, reportInvalidBase64Char, reset, resetAsNaN, resetFloat, resetInt, setCurrentValue, setFeatureMask`

    - ### Methods inherited from class com.fasterxml.jackson.core.base.ParserMinimalBase

      `_ascii, _asciiBytes, _constructError, _decodeBase64, _getCharDesc, _handleUnrecognizedCharacterEscape, _hasTextualNull, _reportError, _reportError, _reportError, _reportInvalidEOF, _reportInvalidEOF, _reportInvalidEOF, _reportInvalidEOFInValue, _reportInvalidEOFInValue, _reportMissingRootWS, _reportUnexpectedChar, _throwInternal, _throwInvalidSpace, _throwUnquotedSpace, _wrapError, clearCurrentToken, currentToken, currentTokenId, getCurrentToken, getCurrentTokenId, getLastClearedToken, getValueAsBoolean, getValueAsDouble, getValueAsInt, getValueAsInt, getValueAsLong, getValueAsLong, getValueAsString, getValueAsString, hasCurrentToken, hasToken, hasTokenId, isExpectedStartArrayToken, isExpectedStartObjectToken, nextValue, reportInvalidNumber, reportOverflowInt, reportOverflowLong, reportUnexpectedNumberChar, skipChildren`

    - ### Methods inherited from class com.fasterxml.jackson.core.JsonParser

      `_codec, _constructError, _reportUnsupportedOperation, canParseAsync, canUseSchema, configure, finishToken, getBinaryValue, getBooleanValue, getByteValue, getFeatureMask, getInputSource, getNonBlockingInputFeeder, getSchema, getShortValue, getValueAsBoolean, getValueAsDouble, isEnabled, nextBooleanValue, nextFieldName, nextFieldName, nextIntValue, nextLongValue, nextTextValue, readBinaryValue, readBinaryValue, readValueAs, readValueAs, readValueAsTree, readValuesAs, readValuesAs, releaseBuffered, releaseBuffered, requiresCustomCodec, setRequestPayloadOnError, setRequestPayloadOnError, setRequestPayloadOnError, setSchema`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### _objectCodec

          protected com.fasterxml.jackson.core.ObjectCodec _objectCodec

      Codec used for data binding when (if) requested.

    - #### _formatFeatures

          protected int _formatFeatures

    - #### _reader

          protected final Reader _reader

      Need to keep track of underlying `Reader` to be able to auto-close it (if required to)

    - #### _yamlParser

          protected final org.yaml.snakeyaml.parser.ParserImpl _yamlParser

    - #### _yamlResolver

          protected final org.yaml.snakeyaml.resolver.Resolver _yamlResolver

    - #### _lastEvent

          protected org.yaml.snakeyaml.events.Event _lastEvent

      Keep track of the last event read, to get access to Location info

    - #### _textValue

          protected String _textValue

      We need to keep track of text values.

    - #### _currentFieldName

          protected String _currentFieldName

      Let's also have a local copy of the current field name

    - #### _currentIsAlias

          protected boolean _currentIsAlias

      Flag that is set when current token was derived from an Alias (reference to another value's anchor)
      Since:
        2.1

    - #### _currentAnchor

          protected String _currentAnchor

      Anchor for the value that parser currently points to: in case of structured types, value whose first token current token is.

  - ### Constructor Detail

    - #### YAMLParser

          public YAMLParser(com.fasterxml.jackson.core.io.IOContext ctxt,
                    com.fasterxml.jackson.core.util.BufferRecycler br,
                    int parserFeatures,
                    int formatFeatures,
                    com.fasterxml.jackson.core.ObjectCodec codec,
                    Reader reader)

  - ### Method Detail

    - #### getCodec

          public com.fasterxml.jackson.core.ObjectCodec getCodec()

      Specified by:
        `getCodec` in class `com.fasterxml.jackson.core.JsonParser`

    - #### setCodec

          public void setCodec(com.fasterxml.jackson.core.ObjectCodec c)

      Specified by:
        `setCodec` in class `com.fasterxml.jackson.core.JsonParser`

    - #### isCurrentAlias

          public boolean isCurrentAlias()

      Method that can be used to check whether current token was created from YAML Alias token (reference to an anchor).
      Since:
        2.1

    - #### getCurrentAnchor

          @Deprecated
          public String getCurrentAnchor()

      Deprecated. Since 2.3 (was added in 2.1) -- use `getObjectId()` instead
      Method that can be used to check if the current token has an associated anchor (id to reference via Alias)

    - #### version

          public com.fasterxml.jackson.core.Version version()

      Specified by:
        `version` in interface `com.fasterxml.jackson.core.Versioned`
      Overrides:
        `version` in class `com.fasterxml.jackson.core.base.ParserBase`

    - #### _closeInput

          protected void _closeInput()
                              throws IOException

      Specified by:
        `_closeInput` in class `com.fasterxml.jackson.core.base.ParserBase`
      Throws:
        `IOException`

    - #### getFormatFeatures

          public int getFormatFeatures()

      Overrides:
        `getFormatFeatures` in class `com.fasterxml.jackson.core.JsonParser`

    - #### overrideFormatFeatures

          public com.fasterxml.jackson.core.JsonParser overrideFormatFeatures(int values,
                                                                     int mask)

      Overrides:
        `overrideFormatFeatures` in class `com.fasterxml.jackson.core.JsonParser`

    - #### enable

          public com.fasterxml.jackson.core.JsonParser enable(YAMLParser.Feature f)

      Method for enabling specified CSV feature (check `YAMLParser.Feature` for list of features)

    - #### disable

          public com.fasterxml.jackson.core.JsonParser disable(YAMLParser.Feature f)

      Method for disabling specified CSV feature (check `YAMLParser.Feature` for list of features)

    - #### configure

          public com.fasterxml.jackson.core.JsonParser configure(YAMLParser.Feature f,
                                                        boolean state)

      Method for enabling or disabling specified CSV feature (check `YAMLParser.Feature` for list of features)

    - #### isEnabled

          public boolean isEnabled(YAMLParser.Feature f)

      Method for checking whether specified CSV `YAMLParser.Feature` is enabled.

    - #### getTokenLocation

          public com.fasterxml.jackson.core.JsonLocation getTokenLocation()

      Overrides:
        `getTokenLocation` in class `com.fasterxml.jackson.core.base.ParserBase`

    - #### getCurrentLocation

          public com.fasterxml.jackson.core.JsonLocation getCurrentLocation()

      Overrides:
        `getCurrentLocation` in class `com.fasterxml.jackson.core.base.ParserBase`

    - #### _locationFor

          protected com.fasterxml.jackson.core.JsonLocation _locationFor(org.yaml.snakeyaml.error.Mark m)

    - #### nextToken

          public com.fasterxml.jackson.core.JsonToken nextToken()
                                                         throws IOException

      Specified by:
        `nextToken` in class `com.fasterxml.jackson.core.base.ParserMinimalBase`
      Throws:
        `IOException`

    - #### _decodeScalar

          protected com.fasterxml.jackson.core.JsonToken _decodeScalar(org.yaml.snakeyaml.events.ScalarEvent scalar)

    - #### _matchYAMLBoolean

          protected Boolean _matchYAMLBoolean(String value,
                                  int len)

    - #### _decodeNumberScalar

          protected com.fasterxml.jackson.core.JsonToken _decodeNumberScalar(String value,
                                                                 int len)

    - #### hasTextCharacters

          public boolean hasTextCharacters()

      Overrides:
        `hasTextCharacters` in class `com.fasterxml.jackson.core.base.ParserBase`

    - #### getText

          public String getText()
                         throws IOException

      Specified by:
        `getText` in class `com.fasterxml.jackson.core.base.ParserMinimalBase`
      Throws:
        `IOException`

    - #### getCurrentName

          public String getCurrentName()
                                throws IOException

      Overrides:
        `getCurrentName` in class `com.fasterxml.jackson.core.base.ParserBase`
      Throws:
        `IOException`

    - #### getTextCharacters

          public char[] getTextCharacters()
                                   throws IOException

      Specified by:
        `getTextCharacters` in class `com.fasterxml.jackson.core.base.ParserMinimalBase`
      Throws:
        `IOException`

    - #### getTextLength

          public int getTextLength()
                            throws IOException

      Specified by:
        `getTextLength` in class `com.fasterxml.jackson.core.base.ParserMinimalBase`
      Throws:
        `IOException`

    - #### getTextOffset

          public int getTextOffset()
                            throws IOException

      Specified by:
        `getTextOffset` in class `com.fasterxml.jackson.core.base.ParserMinimalBase`
      Throws:
        `IOException`

    - #### getText

          public int getText(Writer writer)
                      throws IOException

      Overrides:
        `getText` in class `com.fasterxml.jackson.core.JsonParser`
      Throws:
        `IOException`

    - #### getEmbeddedObject

          public Object getEmbeddedObject()
                                   throws IOException

      Overrides:
        `getEmbeddedObject` in class `com.fasterxml.jackson.core.JsonParser`
      Throws:
        `IOException`

    - #### getBinaryValue

          public byte[] getBinaryValue(com.fasterxml.jackson.core.Base64Variant variant)
                                throws IOException

      Overrides:
        `getBinaryValue` in class `com.fasterxml.jackson.core.base.ParserBase`
      Throws:
        `IOException`

    - #### _parseNumericValue

          protected void _parseNumericValue(int expType)
                                     throws IOException

      Overrides:
        `_parseNumericValue` in class `com.fasterxml.jackson.core.base.ParserBase`
      Throws:
        `IOException`

    - #### _parseIntValue

          protected int _parseIntValue()
                                throws IOException

      Overrides:
        `_parseIntValue` in class `com.fasterxml.jackson.core.base.ParserBase`
      Throws:
        `IOException`

    - #### canReadObjectId

          public boolean canReadObjectId()

      Overrides:
        `canReadObjectId` in class `com.fasterxml.jackson.core.JsonParser`

    - #### canReadTypeId

          public boolean canReadTypeId()

      Overrides:
        `canReadTypeId` in class `com.fasterxml.jackson.core.JsonParser`

    - #### getObjectId

          public String getObjectId()
                             throws IOException,
                                    com.fasterxml.jackson.core.JsonGenerationException

      Overrides:
        `getObjectId` in class `com.fasterxml.jackson.core.JsonParser`
      Throws:
        `IOException`
        `com.fasterxml.jackson.core.JsonGenerationException`

    - #### getTypeId

          public String getTypeId()
                           throws IOException,
                                  com.fasterxml.jackson.core.JsonGenerationException

      Overrides:
        `getTypeId` in class `com.fasterxml.jackson.core.JsonParser`
      Throws:
        `IOException`
        `com.fasterxml.jackson.core.JsonGenerationException`

Copyright © 2017 FasterXML. All rights reserved.