parse static method

ASN1Object parse(
  1. MutableIterable bytes
)

Implementation

static ASN1Object parse(final MutableIterable bytes) {
  if (bytes.isEmpty) {
    throw Exception('Invalid data');
  }

  switch (bytes.first) {
    case ASN1Type.sequenceTag:
      return ASN1Sequence.parse(bytes);
    case ASN1Type.booleanTag:
      return ASN1Boolean.parse(bytes);
    case ASN1Type.integerTag:
      return ASN1Integer.parse(bytes);
    case ASN1Type.nullTag:
      return ASN1Null.parse(bytes);
    case ASN1Type.octetStringTag:
      return ASN1OctetString.parse(bytes);
    case ASN1Type.objectIdentifierTag:
      return ASN1ObjectIdentifier.parse(bytes);
    case ASN1Type.bitStringTag:
      return ASN1BitString.parse(bytes);
    case ASN1Type.endOfContentTag:
      return ASN1EndOfContent.parse(bytes);
    default:
      throw UnimplementedError();
  }
}