ASN1TaggedObjectParser (Bouncy Castle Library 1.85 API Specification)
Date: 2026-07-12

org.bouncycastle.asn1

## Interface ASN1TaggedObjectParser

- All Superinterfaces:
    ASN1Encodable, InMemoryRepresentable
  All Known Implementing Classes:
    ASN1TaggedObject, BERTaggedObject, DERTaggedObject, DLTaggedObject

      public interface ASN1TaggedObjectParser
      extends ASN1Encodable, InMemoryRepresentable

  Interface for the parsing of a generic tagged ASN.1 object.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getTagClass()` Return the tag class associated with this object.
    `int` | `getTagNo()` Return the tag number associated with this object.
    `boolean` | `hasContextTag()`
    `boolean` | `hasContextTag(int tagNo)`
    `boolean` | `hasTag(int tagClass, int tagNo)`
    `boolean` | `hasTagClass(int tagClass)`
    `ASN1Encodable` | `parseBaseUniversal(boolean declaredExplicit, int baseTagNo)`
    `ASN1Encodable` | `parseExplicitBaseObject()` Needed for open types, until we have better type-guided parsing support.
    `ASN1TaggedObjectParser` | `parseExplicitBaseTagged()`
    `ASN1TaggedObjectParser` | `parseImplicitBaseTagged(int baseTagClass, int baseTagNo)`

    - ### Methods inherited from interface org.bouncycastle.asn1.ASN1Encodable

      `toASN1Primitive`

    - ### Methods inherited from interface org.bouncycastle.asn1.InMemoryRepresentable

      `getLoadedObject`

- - ### Method Detail

    - #### getTagClass

          int getTagClass()

      Return the tag class associated with this object.
      Returns:
        the tag class.

    - #### getTagNo

          int getTagNo()

      Return the tag number associated with this object.
      Returns:
        the tag number.

    - #### hasContextTag

          boolean hasContextTag()

    - #### hasContextTag

          boolean hasContextTag(int tagNo)

    - #### hasTag

          boolean hasTag(int tagClass,
                         int tagNo)

    - #### hasTagClass

          boolean hasTagClass(int tagClass)

    - #### parseBaseUniversal

          ASN1Encodable parseBaseUniversal(boolean declaredExplicit,
                                           int baseTagNo)
                                    throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### parseExplicitBaseObject

          ASN1Encodable parseExplicitBaseObject()
                                         throws java.io.IOException

      Needed for open types, until we have better type-guided parsing support. Use sparingly for other purposes, and prefer `parseExplicitBaseTagged()` or `parseBaseUniversal(boolean, int)` where possible. Before using, check for matching tag `class` and `number`.
      Throws:
        `java.io.IOException`

    - #### parseExplicitBaseTagged

          ASN1TaggedObjectParser parseExplicitBaseTagged()
                                                  throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### parseImplicitBaseTagged

          ASN1TaggedObjectParser parseImplicitBaseTagged(int baseTagClass,
                                                         int baseTagNo)
                                                  throws java.io.IOException

      Throws:
        `java.io.IOException`