1package org.bouncycastle.asn1;
2
3/**
4 * Marker interface for CHOICE objects - if you implement this in a role your
5 * own object any attempt to tag the object implicitly will convert the tag to
6 * an explicit one as the encoding rules require.
7 * <p>
8 * If you use this interface your class should also implement the getInstance()
9 * pattern which takes a tag object and the tagging mode used.
10 * </p>
11 * <hr>
12 * <p><b>X.690</b></p>
13 * <p><b>8: Basic encoding rules</b></p>
14 * <p><b>8.13 Encoding of a choice value </b></p>
15 * <p>
16 * The encoding of a choice value shall be the same as the encoding of a value of the chosen type.
17 * <blockquote>
18 * NOTE 1 &mdash; The encoding may be primitive or constructed depending on the chosen type.
19 * <br />
20 * NOTE 2 &mdash; The tag used in the identifier octets is the tag of the chosen type,
21 * as specified in the ASN.1 definition of the choice type.
22 * </blockquote>
23 * </p>
24 */
25public interface ASN1Choice
26{
27    // marker interface
28}
29