using System; using System.IO; namespace Org.BouncyCastle.Asn1 { public interface Asn1TaggedObjectParser : IAsn1Convertible { int TagClass { get; } int TagNo { get; } // TODO[api] //bool HasContextTag(); bool HasContextTag(int tagNo); bool HasTag(int tagClass, int tagNo); // TODO[api] //bool HasTagClass(int tagClass); /// IAsn1Convertible ParseBaseUniversal(bool declaredExplicit, int baseTagNo); /// Needed for open types, until we have better type-guided parsing support. /// /// Use sparingly for other purposes, and prefer or /// where possible. Before using, check for matching tag /// class and number. /// /// IAsn1Convertible ParseExplicitBaseObject(); /// Asn1TaggedObjectParser ParseExplicitBaseTagged(); /// Asn1TaggedObjectParser ParseImplicitBaseTagged(int baseTagClass, int baseTagNo); } }