diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..24e5b0a --- /dev/null +++ b/.dockerignore @@ -0,0 +1 @@ +.build diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bb39a0b --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +.build/ +Package.resolved diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..4a7dc7b --- /dev/null +++ b/Dockerfile @@ -0,0 +1,88 @@ +# ================================ +# Build image +# ================================ +FROM swift:5.10-noble AS build + +# Install OS updates +RUN export DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true \ + && apt-get -q update \ + && apt-get -q dist-upgrade -y \ + && apt-get install -y libjemalloc-dev + +# Set up a build area +WORKDIR /build + +# First just resolve dependencies. +# This creates a cached layer that can be reused +# as long as your Package.swift/Package.resolved +# files do not change. +COPY ./Package.* ./ +RUN swift package resolve \ + $([ -f ./Package.resolved ] && echo "--force-resolved-versions" || true) + +# Copy entire repo into container +COPY . . + +# Build everything, with optimizations, with static linking, and using jemalloc +# N.B.: The static version of jemalloc is incompatible with the static Swift runtime. +RUN swift build -c release \ + --static-swift-stdlib \ + -Xlinker -ljemalloc + +# Switch to the staging area +# WORKDIR /staging + +# # Copy main executable to staging area +# RUN cp "$(swift build --package-path /build -c release --show-bin-path)/App" ./ + +# # Copy static swift backtracer binary to staging area +# RUN cp "/usr/libexec/swift/linux/swift-backtrace-static" ./ + +# # Copy resources bundled by SPM to staging area +# RUN find -L "$(swift build --package-path /build -c release --show-bin-path)/" -regex '.*\.resources$' -exec cp -Ra {} ./ \; + +# # Copy any resources from the public directory and views directory if the directories exist +# # Ensure that by default, neither the directory nor any of its contents are writable. +# RUN [ -d /build/Public ] && { mv /build/Public ./Public && chmod -R a-w ./Public; } || true +# RUN [ -d /build/Resources ] && { mv /build/Resources ./Resources && chmod -R a-w ./Resources; } || true + +# # ================================ +# # Run image +# # ================================ +# FROM ubuntu:noble + +# # Make sure all system packages are up to date, and install only essential packages. +# RUN export DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true \ +# && apt-get -q update \ +# && apt-get -q dist-upgrade -y \ +# && apt-get -q install -y \ +# libjemalloc2 \ +# ca-certificates \ +# tzdata \ +# # If your app or its dependencies import FoundationNetworking, also install `libcurl4`. +# # libcurl4 \ +# # If your app or its dependencies import FoundationXML, also install `libxml2`. +# # libxml2 \ +# && rm -r /var/lib/apt/lists/* + +# # Create a vapor user and group with /app as its home directory +# RUN useradd --user-group --create-home --system --skel /dev/null --home-dir /app vapor + +# # Switch to the new home directory +# WORKDIR /app + +# # Copy built executable and any staged resources from builder +# COPY --from=build --chown=vapor:vapor /staging /app + +# # Provide configuration needed by the built-in crash reporter and some sensible default behaviors. +# ENV SWIFT_BACKTRACE=enable=yes,sanitize=yes,threads=all,images=all,interactive=no,swift-backtrace=./swift-backtrace-static + +# # Ensure all further commands run as the vapor user +# USER vapor:vapor + +# # Let Docker bind to port 8080 +# EXPOSE 8080 + +# # Start the Vapor service when the image is run, default to listening on 8080 in production environment +# ENTRYPOINT ["./App"] +# CMD ["serve", "--env", "production", "--hostname", "0.0.0.0", "--port", "8080"] diff --git a/Sources/ASN1SCG/A.swift b/Sources/ASN1SCG/A.swift deleted file mode 100644 index b9f1fa4..0000000 --- a/Sources/ASN1SCG/A.swift +++ /dev/null @@ -1,45 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum A: DERParseable, DERSerializable, Hashable, Sendable { - case v(V) - case list_x(List) - case o([ASN1OctetString]) - case s([ASN1OctetString]) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific): - self = .v(try V(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific): - self = .list_x(try List(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific): - self = .o(try DER.set(of: ASN1OctetString.self, identifier: .set, rootNode: rootNode)) - case ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific): - self = .s(try DER.sequence(of: ASN1OctetString.self, identifier: .sequence, rootNode: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .v(let v): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), - { coder in try coder.serialize(v) }) - case .list_x(let list_x): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific), - { coder in try coder.serialize(list_x) }) - case .o(let o): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific), - { coder in try coder.serializeSetOf(o) }) - case .s(let s): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific), - { coder in try coder.serializeSequenceOf(s) }) - } - } - -} diff --git a/Sources/ASN1SCG/AccessDescription.swift b/Sources/ASN1SCG/AccessDescription.swift deleted file mode 100644 index 82d7aac..0000000 --- a/Sources/ASN1SCG/AccessDescription.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct AccessDescription: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var accessMethod: ASN1ObjectIdentifier - @usableFromInline var accessLocation: GeneralName - @inlinable init(accessMethod: ASN1ObjectIdentifier, accessLocation: GeneralName) { - self.accessMethod = accessMethod - self.accessLocation = accessLocation - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let accessMethod: ASN1ObjectIdentifier = try ASN1ObjectIdentifier(derEncoded: &nodes) - let accessLocation: GeneralName = try GeneralName(derEncoded: &nodes) - return AccessDescription(accessMethod: accessMethod, accessLocation: accessLocation) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(accessMethod) - try coder.serialize(accessLocation) - } - } -} diff --git a/Sources/ASN1SCG/Ack.swift b/Sources/ASN1SCG/Ack.swift deleted file mode 100644 index cacfbd7..0000000 --- a/Sources/ASN1SCG/Ack.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Ack: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var table: ASN1OctetString - @usableFromInline var id: ASN1OctetString - @inlinable init(table: ASN1OctetString, id: ASN1OctetString) { - self.table = table - self.id = id - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let table: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let id: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - return Ack(table: table, id: id) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(table) - try coder.serialize(id) - } - } -} diff --git a/Sources/ASN1SCG/AddRequest.swift b/Sources/ASN1SCG/AddRequest.swift deleted file mode 100644 index 131bc8d..0000000 --- a/Sources/ASN1SCG/AddRequest.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct AddRequest: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var entry: ASN1OctetString - @usableFromInline var attributes: [PartialAttribute] - @inlinable init(entry: ASN1OctetString, attributes: [PartialAttribute]) { - self.entry = entry - self.attributes = attributes - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let entry: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let attributes: [PartialAttribute] = try DER.sequence(of: PartialAttribute.self, identifier: .sequence, nodes: &nodes) - return AddRequest(entry: entry, attributes: attributes) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(entry) - try coder.serializeSequenceOf(attributes) - } - } -} diff --git a/Sources/ASN1SCG/AdministrationDomainName.swift b/Sources/ASN1SCG/AdministrationDomainName.swift deleted file mode 100644 index 1aa9da0..0000000 --- a/Sources/ASN1SCG/AdministrationDomainName.swift +++ /dev/null @@ -1,25 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum AdministrationDomainName: DERParseable, DERSerializable, Hashable, Sendable { - case numeric(ASN1PrintableString) - case printable(ASN1PrintableString) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1PrintableString.defaultIdentifier: - self = .numeric(try ASN1PrintableString(derEncoded: rootNode)) - case ASN1PrintableString.defaultIdentifier: - self = .printable(try ASN1PrintableString(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .numeric(let numeric): try coder.serialize(numeric) - case .printable(let printable): try coder.serialize(printable) - } - } - -} diff --git a/Sources/ASN1SCG/AlgorithmIdentifier.swift b/Sources/ASN1SCG/AlgorithmIdentifier.swift deleted file mode 100644 index ca54887..0000000 --- a/Sources/ASN1SCG/AlgorithmIdentifier.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct AlgorithmIdentifier: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var algorithm: ASN1ObjectIdentifier - @usableFromInline var parameters: ASN1Any? - @inlinable init(algorithm: ASN1ObjectIdentifier, parameters: ASN1Any?) { - self.algorithm = algorithm - self.parameters = parameters - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let algorithm: ASN1ObjectIdentifier = try ASN1ObjectIdentifier(derEncoded: &nodes) - let parameters: ASN1Any? = try ASN1Any(derEncoded: &nodes) - return AlgorithmIdentifier(algorithm: algorithm, parameters: parameters) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(algorithm) - if let parameters = self.parameters { try coder.serialize(parameters) } - } - } -} diff --git a/Sources/ASN1SCG/AttCertIssuer.swift b/Sources/ASN1SCG/AttCertIssuer.swift deleted file mode 100644 index 6815684..0000000 --- a/Sources/ASN1SCG/AttCertIssuer.swift +++ /dev/null @@ -1,28 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum AttCertIssuer: DERParseable, DERSerializable, Hashable, Sendable { - case v1Form([GeneralName]) - case v2Form(V2Form) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case [GeneralName].defaultIdentifier: - self = .v1Form(try [GeneralName](derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific): - self = .v2Form(try V2Form(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .v1Form(let v1Form): try coder.serialize(v1Form) - case .v2Form(let v2Form): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), - { coder in try coder.serialize(v2Form) }) - } - } - -} diff --git a/Sources/ASN1SCG/AttCertValidityPeriod.swift b/Sources/ASN1SCG/AttCertValidityPeriod.swift deleted file mode 100644 index 319b6ce..0000000 --- a/Sources/ASN1SCG/AttCertValidityPeriod.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct AttCertValidityPeriod: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var notBeforeTime: GeneralizedTime - @usableFromInline var notAfterTime: GeneralizedTime - @inlinable init(notBeforeTime: GeneralizedTime, notAfterTime: GeneralizedTime) { - self.notBeforeTime = notBeforeTime - self.notAfterTime = notAfterTime - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let notBeforeTime: GeneralizedTime = try GeneralizedTime(derEncoded: &nodes) - let notAfterTime: GeneralizedTime = try GeneralizedTime(derEncoded: &nodes) - return AttCertValidityPeriod(notBeforeTime: notBeforeTime, notAfterTime: notAfterTime) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(notBeforeTime) - try coder.serialize(notAfterTime) - } - } -} diff --git a/Sources/ASN1SCG/AttCertVersion.swift b/Sources/ASN1SCG/AttCertVersion.swift deleted file mode 100644 index 4c4c104..0000000 --- a/Sources/ASN1SCG/AttCertVersion.swift +++ /dev/null @@ -1,7 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -public struct AttCertVersion : Hashable, Sendable, Comparable { - @usableFromInline var rawValue: Int - @inlinable public static func < (lhs: AttCertVersion, rhs: AttCertVersion) -> Bool { lhs.rawValue < rhs.rawValue } - @inlinable init(rawValue: Int) { self.rawValue = rawValue } - public static let v2 = Self(rawValue: 1) -} diff --git a/Sources/ASN1SCG/Attribute.swift b/Sources/ASN1SCG/Attribute.swift deleted file mode 100644 index ba6a26d..0000000 --- a/Sources/ASN1SCG/Attribute.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Attribute: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var type: ASN1ObjectIdentifier - @usableFromInline var values: [ASN1Any] - @inlinable init(type: ASN1ObjectIdentifier, values: [ASN1Any]) { - self.type = type - self.values = values - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let type: ASN1ObjectIdentifier = try ASN1ObjectIdentifier(derEncoded: &nodes) - let values: [ASN1Any] = try DER.set(of: ASN1Any.self, identifier: .set, nodes: &nodes) - return Attribute(type: type, values: values) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(type) - try coder.serializeSetOf(values) - } - } -} diff --git a/Sources/ASN1SCG/AttributeTypeAndValue.swift b/Sources/ASN1SCG/AttributeTypeAndValue.swift deleted file mode 100644 index 397737e..0000000 --- a/Sources/ASN1SCG/AttributeTypeAndValue.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct AttributeTypeAndValue: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var type: ASN1ObjectIdentifier - @usableFromInline var value: ASN1Any - @inlinable init(type: ASN1ObjectIdentifier, value: ASN1Any) { - self.type = type - self.value = value - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let type: ASN1ObjectIdentifier = try ASN1ObjectIdentifier(derEncoded: &nodes) - let value: ASN1Any = try ASN1Any(derEncoded: &nodes) - return AttributeTypeAndValue(type: type, value: value) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(type) - try coder.serialize(value) - } - } -} diff --git a/Sources/ASN1SCG/AttributeValueAssertion.swift b/Sources/ASN1SCG/AttributeValueAssertion.swift deleted file mode 100644 index 17ae34a..0000000 --- a/Sources/ASN1SCG/AttributeValueAssertion.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct AttributeValueAssertion: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var attributeDesc: ASN1OctetString - @usableFromInline var assertionValue: ASN1OctetString - @inlinable init(attributeDesc: ASN1OctetString, assertionValue: ASN1OctetString) { - self.attributeDesc = attributeDesc - self.assertionValue = assertionValue - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let attributeDesc: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let assertionValue: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - return AttributeValueAssertion(attributeDesc: attributeDesc, assertionValue: assertionValue) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(attributeDesc) - try coder.serialize(assertionValue) - } - } -} diff --git a/Sources/ASN1SCG/Auth.swift b/Sources/ASN1SCG/Auth.swift deleted file mode 100644 index 3010662..0000000 --- a/Sources/ASN1SCG/Auth.swift +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Auth: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var session: ASN1OctetString - @usableFromInline var type: AuthType - @usableFromInline var sms_code: ASN1OctetString - @usableFromInline var cert: ASN1OctetString - @usableFromInline var challange: ASN1OctetString - @usableFromInline var push: ASN1OctetString - @usableFromInline var os: OS - @usableFromInline var nickname: ASN1OctetString - @usableFromInline var settings: [Feature] - @usableFromInline var token: ASN1OctetString - @usableFromInline var devkey: ASN1OctetString - @usableFromInline var phone: ASN1OctetString - @inlinable init(session: ASN1OctetString, type: AuthType, sms_code: ASN1OctetString, cert: ASN1OctetString, challange: ASN1OctetString, push: ASN1OctetString, os: OS, nickname: ASN1OctetString, settings: [Feature], token: ASN1OctetString, devkey: ASN1OctetString, phone: ASN1OctetString) { - self.session = session - self.type = type - self.sms_code = sms_code - self.cert = cert - self.challange = challange - self.push = push - self.os = os - self.nickname = nickname - self.settings = settings - self.token = token - self.devkey = devkey - self.phone = phone - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let session: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let type: AuthType = try AuthType(derEncoded: &nodes) - let sms_code: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let cert: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let challange: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let push: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let os: OS = try OS(derEncoded: &nodes) - let nickname: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let settings: [Feature] = try DER.sequence(of: Feature.self, identifier: .sequence, nodes: &nodes) - let token: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let devkey: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let phone: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - return Auth(session: session, type: type, sms_code: sms_code, cert: cert, challange: challange, push: push, os: os, nickname: nickname, settings: settings, token: token, devkey: devkey, phone: phone) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(session) - try coder.serialize(type) - try coder.serialize(sms_code) - try coder.serialize(cert) - try coder.serialize(challange) - try coder.serialize(push) - try coder.serialize(os) - try coder.serialize(nickname) - try coder.serializeSequenceOf(settings) - try coder.serialize(token) - try coder.serialize(devkey) - try coder.serialize(phone) - } - } -} diff --git a/Sources/ASN1SCG/AuthType.swift b/Sources/ASN1SCG/AuthType.swift deleted file mode 100644 index 697ed87..0000000 --- a/Sources/ASN1SCG/AuthType.swift +++ /dev/null @@ -1,20 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct AuthType: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let reg = AuthType(rawValue: 1) - static let auth = AuthType(rawValue: 2) - static let forget = AuthType(rawValue: 3) - static let renew = AuthType(rawValue: 4) -} diff --git a/Sources/ASN1SCG/AuthenticationChoice.swift b/Sources/ASN1SCG/AuthenticationChoice.swift deleted file mode 100644 index d470514..0000000 --- a/Sources/ASN1SCG/AuthenticationChoice.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum AuthenticationChoice: DERParseable, DERSerializable, Hashable, Sendable { - case simple(ASN1OctetString) - case sasl(SaslCredentials) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific): - self = .simple(try ASN1OctetString(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific): - self = .sasl(try SaslCredentials(derEncoded: rootNode)) - - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .simple(let simple): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), - { coder in try coder.serialize(simple) }) - case .sasl(let sasl): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific), - { coder in try coder.serialize(sasl) }) - - } - } - -} diff --git a/Sources/ASN1SCG/AuthorityKeyIdentifier.swift b/Sources/ASN1SCG/AuthorityKeyIdentifier.swift deleted file mode 100644 index 0a56502..0000000 --- a/Sources/ASN1SCG/AuthorityKeyIdentifier.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct AuthorityKeyIdentifier: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var keyIdentifier: ASN1OctetString? - @usableFromInline var authorityCertIssuer: [GeneralName]? - @usableFromInline var authorityCertSerialNumber: ArraySlice? - @inlinable init(keyIdentifier: ASN1OctetString?, authorityCertIssuer: [GeneralName]?, authorityCertSerialNumber: ArraySlice?) { - self.keyIdentifier = keyIdentifier - self.authorityCertIssuer = authorityCertIssuer - self.authorityCertSerialNumber = authorityCertSerialNumber - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let keyIdentifier: ASN1OctetString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) - let authorityCertIssuer: [GeneralName] = try DER.sequence(of: GeneralName.self, identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific), nodes: &nodes) - let authorityCertSerialNumber: ArraySlice? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific)) - return AuthorityKeyIdentifier(keyIdentifier: keyIdentifier, authorityCertIssuer: authorityCertIssuer, authorityCertSerialNumber: authorityCertSerialNumber) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - if let keyIdentifier = self.keyIdentifier { try coder.serializeOptionalImplicitlyTagged(keyIdentifier, withIdentifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) } - if let authorityCertIssuer = self.authorityCertIssuer { try coder.serializeSequenceOf(authorityCertIssuer, identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) } - if let authorityCertSerialNumber = self.authorityCertSerialNumber { try coder.serializeOptionalImplicitlyTagged(authorityCertSerialNumber, withIdentifier: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/BasicConstraints.swift b/Sources/ASN1SCG/BasicConstraints.swift deleted file mode 100644 index 8cde0da..0000000 --- a/Sources/ASN1SCG/BasicConstraints.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct BasicConstraints: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var cA: Bool - @usableFromInline var pathLenConstraint: ArraySlice? - @inlinable init(cA: Bool, pathLenConstraint: ArraySlice?) { - self.cA = cA - self.pathLenConstraint = pathLenConstraint - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let cA: Bool = try Bool(derEncoded: &nodes) - let pathLenConstraint: ArraySlice? = try ArraySlice(derEncoded: &nodes) - return BasicConstraints(cA: cA, pathLenConstraint: pathLenConstraint) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(cA) - if let pathLenConstraint = self.pathLenConstraint { try coder.serialize(pathLenConstraint) } - } - } -} diff --git a/Sources/ASN1SCG/BindRequest.swift b/Sources/ASN1SCG/BindRequest.swift deleted file mode 100644 index 282f720..0000000 --- a/Sources/ASN1SCG/BindRequest.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct BindRequest: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var version: ArraySlice - @usableFromInline var name: ASN1OctetString - @usableFromInline var authentication: AuthenticationChoice - @inlinable init(version: ArraySlice, name: ASN1OctetString, authentication: AuthenticationChoice) { - self.version = version - self.name = name - self.authentication = authentication - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let version: ArraySlice = try ArraySlice(derEncoded: &nodes) - let name: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let authentication: AuthenticationChoice = try AuthenticationChoice(derEncoded: &nodes) - return BindRequest(version: version, name: name, authentication: authentication) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(version) - try coder.serialize(name) - try coder.serialize(authentication) - } - } -} diff --git a/Sources/ASN1SCG/BindResponse.swift b/Sources/ASN1SCG/BindResponse.swift deleted file mode 100644 index c259d13..0000000 --- a/Sources/ASN1SCG/BindResponse.swift +++ /dev/null @@ -1,41 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct BindResponse: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var resultCode: LDAPResult_resultCode_Enum - @usableFromInline var matchedDN: ASN1OctetString - @usableFromInline var diagnosticMessage: ASN1OctetString - @usableFromInline var referral: [ASN1OctetString]? - @usableFromInline var serverSaslCreds: ASN1OctetString? - @inlinable init(resultCode: LDAPResult_resultCode_Enum, matchedDN: ASN1OctetString, diagnosticMessage: ASN1OctetString, referral: [ASN1OctetString]?, serverSaslCreds: ASN1OctetString?) { - self.resultCode = resultCode - self.matchedDN = matchedDN - self.diagnosticMessage = diagnosticMessage - self.referral = referral - self.serverSaslCreds = serverSaslCreds - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let resultCode: LDAPResult_resultCode_Enum = try LDAPResult_resultCode_Enum(derEncoded: &nodes) - let matchedDN: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let diagnosticMessage: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let referral: [ASN1OctetString] = try DER.sequence(of: ASN1OctetString.self, identifier: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific), nodes: &nodes) - let serverSaslCreds: ASN1OctetString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 7, tagClass: .contextSpecific)) - return BindResponse(resultCode: resultCode, matchedDN: matchedDN, diagnosticMessage: diagnosticMessage, referral: referral, serverSaslCreds: serverSaslCreds) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(resultCode) - try coder.serialize(matchedDN) - try coder.serialize(diagnosticMessage) - if let referral = self.referral { try coder.serializeSequenceOf(referral, identifier: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific)) } - if let serverSaslCreds = self.serverSaslCreds { try coder.serializeOptionalImplicitlyTagged(serverSaslCreds, withIdentifier: ASN1Identifier(tagWithNumber: 7, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/BuiltInDomainDefinedAttribute.swift b/Sources/ASN1SCG/BuiltInDomainDefinedAttribute.swift deleted file mode 100644 index 6f7fb0b..0000000 --- a/Sources/ASN1SCG/BuiltInDomainDefinedAttribute.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct BuiltInDomainDefinedAttribute: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var type: ASN1PrintableString - @usableFromInline var value: ASN1PrintableString - @inlinable init(type: ASN1PrintableString, value: ASN1PrintableString) { - self.type = type - self.value = value - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let type: ASN1PrintableString = try ASN1PrintableString(derEncoded: &nodes) - let value: ASN1PrintableString = try ASN1PrintableString(derEncoded: &nodes) - return BuiltInDomainDefinedAttribute(type: type, value: value) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(type) - try coder.serialize(value) - } - } -} diff --git a/Sources/ASN1SCG/BuiltInStandardAttributes.swift b/Sources/ASN1SCG/BuiltInStandardAttributes.swift deleted file mode 100644 index 9de7dce..0000000 --- a/Sources/ASN1SCG/BuiltInStandardAttributes.swift +++ /dev/null @@ -1,57 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct BuiltInStandardAttributes: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var country_name: CountryName? - @usableFromInline var administration_domain_name: AdministrationDomainName? - @usableFromInline var network_address: ASN1PrintableString? - @usableFromInline var terminal_identifier: ASN1PrintableString? - @usableFromInline var private_domain_name: PrivateDomainName? - @usableFromInline var organization_name: ASN1PrintableString? - @usableFromInline var numeric_user_identifier: ASN1PrintableString? - @usableFromInline var personal_name: PersonalName? - @usableFromInline var organizational_unit_names: [ASN1PrintableString]? - @inlinable init(country_name: CountryName?, administration_domain_name: AdministrationDomainName?, network_address: ASN1PrintableString?, terminal_identifier: ASN1PrintableString?, private_domain_name: PrivateDomainName?, organization_name: ASN1PrintableString?, numeric_user_identifier: ASN1PrintableString?, personal_name: PersonalName?, organizational_unit_names: [ASN1PrintableString]?) { - self.country_name = country_name - self.administration_domain_name = administration_domain_name - self.network_address = network_address - self.terminal_identifier = terminal_identifier - self.private_domain_name = private_domain_name - self.organization_name = organization_name - self.numeric_user_identifier = numeric_user_identifier - self.personal_name = personal_name - self.organizational_unit_names = organizational_unit_names - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let country_name: CountryName? = try CountryName(derEncoded: &nodes) - let administration_domain_name: AdministrationDomainName? = try AdministrationDomainName(derEncoded: &nodes) - let network_address: ASN1PrintableString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) - let terminal_identifier: ASN1PrintableString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) - let private_domain_name: PrivateDomainName? = try DER.optionalExplicitlyTagged(&nodes, tagNumber: 2, tagClass: .contextSpecific) { node in return try PrivateDomainName(derEncoded: node) } - let organization_name: ASN1PrintableString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific)) - let numeric_user_identifier: ASN1PrintableString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 4, tagClass: .contextSpecific)) - let personal_name: PersonalName? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 5, tagClass: .contextSpecific)) - let organizational_unit_names: [ASN1PrintableString] = try DER.sequence(of: ASN1PrintableString.self, identifier: ASN1Identifier(tagWithNumber: 6, tagClass: .contextSpecific), nodes: &nodes) - return BuiltInStandardAttributes(country_name: country_name, administration_domain_name: administration_domain_name, network_address: network_address, terminal_identifier: terminal_identifier, private_domain_name: private_domain_name, organization_name: organization_name, numeric_user_identifier: numeric_user_identifier, personal_name: personal_name, organizational_unit_names: organizational_unit_names) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - if let country_name = self.country_name { try coder.serialize(country_name) } - if let administration_domain_name = self.administration_domain_name { try coder.serialize(administration_domain_name) } - if let network_address = self.network_address { try coder.serializeOptionalImplicitlyTagged(network_address, withIdentifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) } - if let terminal_identifier = self.terminal_identifier { try coder.serializeOptionalImplicitlyTagged(terminal_identifier, withIdentifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) } - if let private_domain_name = self.private_domain_name { try coder.serialize(explicitlyTaggedWithTagNumber: 2, tagClass: .contextSpecific) { codec in try codec.serialize(private_domain_name) } } - if let organization_name = self.organization_name { try coder.serializeOptionalImplicitlyTagged(organization_name, withIdentifier: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific)) } - if let numeric_user_identifier = self.numeric_user_identifier { try coder.serializeOptionalImplicitlyTagged(numeric_user_identifier, withIdentifier: ASN1Identifier(tagWithNumber: 4, tagClass: .contextSpecific)) } - if let personal_name = self.personal_name { try coder.serializeOptionalImplicitlyTagged(personal_name, withIdentifier: ASN1Identifier(tagWithNumber: 5, tagClass: .contextSpecific)) } - if let organizational_unit_names = self.organizational_unit_names { try coder.serializeSequenceOf(organizational_unit_names, identifier: ASN1Identifier(tagWithNumber: 6, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/CHATMessage.swift b/Sources/ASN1SCG/CHATMessage.swift deleted file mode 100644 index 5f47668..0000000 --- a/Sources/ASN1SCG/CHATMessage.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct CHATMessage: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var no: ArraySlice - @usableFromInline var headers: [ASN1OctetString] - @usableFromInline var body: CHATProtocol - @inlinable init(no: ArraySlice, headers: [ASN1OctetString], body: CHATProtocol) { - self.no = no - self.headers = headers - self.body = body - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let no: ArraySlice = try ArraySlice(derEncoded: &nodes) - let headers: [ASN1OctetString] = try DER.sequence(of: ASN1OctetString.self, identifier: .sequence, nodes: &nodes) - let body: CHATProtocol = try CHATProtocol(derEncoded: &nodes) - return CHATMessage(no: no, headers: headers, body: body) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(no) - try coder.serializeSequenceOf(headers) - try coder.serialize(body) - } - } -} diff --git a/Sources/ASN1SCG/CHATProtocol.swift b/Sources/ASN1SCG/CHATProtocol.swift deleted file mode 100644 index 1baf24c..0000000 --- a/Sources/ASN1SCG/CHATProtocol.swift +++ /dev/null @@ -1,122 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum CHATProtocol: DERParseable, DERSerializable, Hashable, Sendable { - case register(Register) - case auth(Auth) - case feature(Feature) - case service(Service) - case message(Message) - case profile(Profile) - case room(Room) - case member(Member) - case search(Search) - case file(FileDesc) - case typing(Typing) - case friend(Friend) - case presence(Presence) - case history(History) - case roster(Roster) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific): - self = .register(try Register(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific): - self = .auth(try Auth(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific): - self = .feature(try Feature(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific): - self = .service(try Service(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 4, tagClass: .contextSpecific): - self = .message(try Message(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 5, tagClass: .contextSpecific): - self = .profile(try Profile(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 6, tagClass: .contextSpecific): - self = .room(try Room(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 7, tagClass: .contextSpecific): - self = .member(try Member(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 8, tagClass: .contextSpecific): - self = .search(try Search(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 9, tagClass: .contextSpecific): - self = .file(try FileDesc(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 10, tagClass: .contextSpecific): - self = .typing(try Typing(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 11, tagClass: .contextSpecific): - self = .friend(try Friend(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 12, tagClass: .contextSpecific): - self = .presence(try Presence(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 13, tagClass: .contextSpecific): - self = .history(try History(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 14, tagClass: .contextSpecific): - self = .roster(try Roster(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .register(let register): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), - { coder in try coder.serialize(register) }) - case .auth(let auth): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific), - { coder in try coder.serialize(auth) }) - case .feature(let feature): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific), - { coder in try coder.serialize(feature) }) - case .service(let service): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific), - { coder in try coder.serialize(service) }) - case .message(let message): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 4, tagClass: .contextSpecific), - { coder in try coder.serialize(message) }) - case .profile(let profile): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 5, tagClass: .contextSpecific), - { coder in try coder.serialize(profile) }) - case .room(let room): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 6, tagClass: .contextSpecific), - { coder in try coder.serialize(room) }) - case .member(let member): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 7, tagClass: .contextSpecific), - { coder in try coder.serialize(member) }) - case .search(let search): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 8, tagClass: .contextSpecific), - { coder in try coder.serialize(search) }) - case .file(let file): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 9, tagClass: .contextSpecific), - { coder in try coder.serialize(file) }) - case .typing(let typing): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 10, tagClass: .contextSpecific), - { coder in try coder.serialize(typing) }) - case .friend(let friend): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 11, tagClass: .contextSpecific), - { coder in try coder.serialize(friend) }) - case .presence(let presence): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 12, tagClass: .contextSpecific), - { coder in try coder.serialize(presence) }) - case .history(let history): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 13, tagClass: .contextSpecific), - { coder in try coder.serialize(history) }) - case .roster(let roster): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 14, tagClass: .contextSpecific), - { coder in try coder.serialize(roster) }) - } - } - -} diff --git a/Sources/ASN1SCG/CMSVersion.swift b/Sources/ASN1SCG/CMSVersion.swift deleted file mode 100644 index 4444127..0000000 --- a/Sources/ASN1SCG/CMSVersion.swift +++ /dev/null @@ -1,12 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -public struct CMSVersion : Hashable, Sendable, Comparable { - @usableFromInline var rawValue: Int - @inlinable public static func < (lhs: CMSVersion, rhs: CMSVersion) -> Bool { lhs.rawValue < rhs.rawValue } - @inlinable init(rawValue: Int) { self.rawValue = rawValue } - public static let v0 = Self(rawValue: 0) - public static let v1 = Self(rawValue: 1) - public static let v2 = Self(rawValue: 2) - public static let v3 = Self(rawValue: 3) - public static let v4 = Self(rawValue: 4) - public static let v5 = Self(rawValue: 5) -} diff --git a/Sources/ASN1SCG/CRLReason.swift b/Sources/ASN1SCG/CRLReason.swift deleted file mode 100644 index f97cd29..0000000 --- a/Sources/ASN1SCG/CRLReason.swift +++ /dev/null @@ -1,26 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct CRLReason: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let unspecified = CRLReason(rawValue: 0) - static let keyCompromise = CRLReason(rawValue: 1) - static let cACompromise = CRLReason(rawValue: 2) - static let affiliationChanged = CRLReason(rawValue: 3) - static let superseded = CRLReason(rawValue: 4) - static let cessationOfOperation = CRLReason(rawValue: 5) - static let certificateHold = CRLReason(rawValue: 6) - static let removeFromCRL = CRLReason(rawValue: 8) - static let privilegeWithdrawn = CRLReason(rawValue: 9) - static let aACompromise = CRLReason(rawValue: 10) -} diff --git a/Sources/ASN1SCG/Certificate.swift b/Sources/ASN1SCG/Certificate.swift deleted file mode 100644 index d082cbd..0000000 --- a/Sources/ASN1SCG/Certificate.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Certificate: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var tbsCertificate: TBSCertificate - @usableFromInline var signatureAlgorithm: AlgorithmIdentifier - @usableFromInline var signature: ASN1BitString - @inlinable init(tbsCertificate: TBSCertificate, signatureAlgorithm: AlgorithmIdentifier, signature: ASN1BitString) { - self.tbsCertificate = tbsCertificate - self.signatureAlgorithm = signatureAlgorithm - self.signature = signature - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let tbsCertificate: TBSCertificate = try TBSCertificate(derEncoded: &nodes) - let signatureAlgorithm: AlgorithmIdentifier = try AlgorithmIdentifier(derEncoded: &nodes) - let signature: ASN1BitString = try ASN1BitString(derEncoded: &nodes) - return Certificate(tbsCertificate: tbsCertificate, signatureAlgorithm: signatureAlgorithm, signature: signature) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(tbsCertificate) - try coder.serialize(signatureAlgorithm) - try coder.serialize(signature) - } - } -} diff --git a/Sources/ASN1SCG/CertificateList.swift b/Sources/ASN1SCG/CertificateList.swift deleted file mode 100644 index 94ab57a..0000000 --- a/Sources/ASN1SCG/CertificateList.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct CertificateList: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var tbsCertList: TBSCertList - @usableFromInline var signatureAlgorithm: AlgorithmIdentifier - @usableFromInline var signature: ASN1BitString - @inlinable init(tbsCertList: TBSCertList, signatureAlgorithm: AlgorithmIdentifier, signature: ASN1BitString) { - self.tbsCertList = tbsCertList - self.signatureAlgorithm = signatureAlgorithm - self.signature = signature - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let tbsCertList: TBSCertList = try TBSCertList(derEncoded: &nodes) - let signatureAlgorithm: AlgorithmIdentifier = try AlgorithmIdentifier(derEncoded: &nodes) - let signature: ASN1BitString = try ASN1BitString(derEncoded: &nodes) - return CertificateList(tbsCertList: tbsCertList, signatureAlgorithm: signatureAlgorithm, signature: signature) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(tbsCertList) - try coder.serialize(signatureAlgorithm) - try coder.serialize(signature) - } - } -} diff --git a/Sources/ASN1SCG/CompareRequest.swift b/Sources/ASN1SCG/CompareRequest.swift deleted file mode 100644 index f020d10..0000000 --- a/Sources/ASN1SCG/CompareRequest.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct CompareRequest: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var entry: ASN1OctetString - @usableFromInline var ava: AttributeValueAssertion - @inlinable init(entry: ASN1OctetString, ava: AttributeValueAssertion) { - self.entry = entry - self.ava = ava - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let entry: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let ava: AttributeValueAssertion = try AttributeValueAssertion(derEncoded: &nodes) - return CompareRequest(entry: entry, ava: ava) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(entry) - try coder.serialize(ava) - } - } -} diff --git a/Sources/ASN1SCG/Contact.swift b/Sources/ASN1SCG/Contact.swift deleted file mode 100644 index 8a95bdf..0000000 --- a/Sources/ASN1SCG/Contact.swift +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Contact: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var nickname: ASN1OctetString - @usableFromInline var avatar: ASN1OctetString - @usableFromInline var names: [ASN1OctetString] - @usableFromInline var phone_id: ASN1OctetString - @usableFromInline var surnames: [ASN1OctetString] - @usableFromInline var last_msg: Message - @usableFromInline var presence: PresenceType - @usableFromInline var update: ArraySlice - @usableFromInline var created: ArraySlice - @usableFromInline var settings: [Feature] - @usableFromInline var services: [Service] - @usableFromInline var status: ContactStatus - @inlinable init(nickname: ASN1OctetString, avatar: ASN1OctetString, names: [ASN1OctetString], phone_id: ASN1OctetString, surnames: [ASN1OctetString], last_msg: Message, presence: PresenceType, update: ArraySlice, created: ArraySlice, settings: [Feature], services: [Service], status: ContactStatus) { - self.nickname = nickname - self.avatar = avatar - self.names = names - self.phone_id = phone_id - self.surnames = surnames - self.last_msg = last_msg - self.presence = presence - self.update = update - self.created = created - self.settings = settings - self.services = services - self.status = status - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let nickname: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let avatar: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let names: [ASN1OctetString] = try DER.sequence(of: ASN1OctetString.self, identifier: .sequence, nodes: &nodes) - let phone_id: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let surnames: [ASN1OctetString] = try DER.sequence(of: ASN1OctetString.self, identifier: .sequence, nodes: &nodes) - let last_msg: Message = try Message(derEncoded: &nodes) - let presence: PresenceType = try PresenceType(derEncoded: &nodes) - let update: ArraySlice = try ArraySlice(derEncoded: &nodes) - let created: ArraySlice = try ArraySlice(derEncoded: &nodes) - let settings: [Feature] = try DER.sequence(of: Feature.self, identifier: .sequence, nodes: &nodes) - let services: [Service] = try DER.sequence(of: Service.self, identifier: .sequence, nodes: &nodes) - let status: ContactStatus = try ContactStatus(derEncoded: &nodes) - return Contact(nickname: nickname, avatar: avatar, names: names, phone_id: phone_id, surnames: surnames, last_msg: last_msg, presence: presence, update: update, created: created, settings: settings, services: services, status: status) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(nickname) - try coder.serialize(avatar) - try coder.serializeSequenceOf(names) - try coder.serialize(phone_id) - try coder.serializeSequenceOf(surnames) - try coder.serialize(last_msg) - try coder.serialize(presence) - try coder.serialize(update) - try coder.serialize(created) - try coder.serializeSequenceOf(settings) - try coder.serializeSequenceOf(services) - try coder.serialize(status) - } - } -} diff --git a/Sources/ASN1SCG/ContactStatus.swift b/Sources/ASN1SCG/ContactStatus.swift deleted file mode 100644 index cbe19ad..0000000 --- a/Sources/ASN1SCG/ContactStatus.swift +++ /dev/null @@ -1,26 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct ContactStatus: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let request = ContactStatus(rawValue: 1) - static let authorization = ContactStatus(rawValue: 2) - static let ignore = ContactStatus(rawValue: 3) - static let intern = ContactStatus(rawValue: 4) - static let friend = ContactStatus(rawValue: 5) - static let last_msg = ContactStatus(rawValue: 6) - static let ban = ContactStatus(rawValue: 7) - static let banned = ContactStatus(rawValue: 8) - static let deleted = ContactStatus(rawValue: 9) - static let nonexised = ContactStatus(rawValue: 10) -} diff --git a/Sources/ASN1SCG/ContentInfo.swift b/Sources/ASN1SCG/ContentInfo.swift deleted file mode 100644 index 8ad9290..0000000 --- a/Sources/ASN1SCG/ContentInfo.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct ContentInfo: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var contentType: id - @usableFromInline var content: Type - @inlinable init(contentType: id, content: Type) { - self.contentType = contentType - self.content = content - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let contentType: id = try id(derEncoded: &nodes) - let content: Type = try DER.explicitlyTagged(&nodes, tagNumber: 0, tagClass: .contextSpecific) { node in return try Type(derEncoded: node) } - return ContentInfo(contentType: contentType, content: content) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(contentType) - try coder.serialize(explicitlyTaggedWithTagNumber: 0, tagClass: .contextSpecific) { codec in try codec.serialize(content) } - } - } -} diff --git a/Sources/ASN1SCG/Control.swift b/Sources/ASN1SCG/Control.swift deleted file mode 100644 index 90fb874..0000000 --- a/Sources/ASN1SCG/Control.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Control: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var controlType: ASN1OctetString - @usableFromInline var criticality: Bool - @usableFromInline var controlValue: ASN1OctetString? - @inlinable init(controlType: ASN1OctetString, criticality: Bool, controlValue: ASN1OctetString?) { - self.controlType = controlType - self.criticality = criticality - self.controlValue = controlValue - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let controlType: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let criticality: Bool = try Bool(derEncoded: &nodes) - let controlValue: ASN1OctetString? = try ASN1OctetString(derEncoded: &nodes) - return Control(controlType: controlType, criticality: criticality, controlValue: controlValue) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(controlType) - try coder.serialize(criticality) - if let controlValue = self.controlValue { try coder.serialize(controlValue) } - } - } -} diff --git a/Sources/ASN1SCG/CountryName.swift b/Sources/ASN1SCG/CountryName.swift deleted file mode 100644 index 6a4f38a..0000000 --- a/Sources/ASN1SCG/CountryName.swift +++ /dev/null @@ -1,25 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum CountryName: DERParseable, DERSerializable, Hashable, Sendable { - case x121_dcc_code(ASN1PrintableString) - case iso_3166_alpha2_code(ASN1PrintableString) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1PrintableString.defaultIdentifier: - self = .x121_dcc_code(try ASN1PrintableString(derEncoded: rootNode)) - case ASN1PrintableString.defaultIdentifier: - self = .iso_3166_alpha2_code(try ASN1PrintableString(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .x121_dcc_code(let x121_dcc_code): try coder.serialize(x121_dcc_code) - case .iso_3166_alpha2_code(let iso_3166_alpha2_code): try coder.serialize(iso_3166_alpha2_code) - } - } - -} diff --git a/Sources/ASN1SCG/Criteria.swift b/Sources/ASN1SCG/Criteria.swift deleted file mode 100644 index 05340e2..0000000 --- a/Sources/ASN1SCG/Criteria.swift +++ /dev/null @@ -1,19 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct Criteria: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let equal = Criteria(rawValue: 0) - static let not_equal = Criteria(rawValue: 1) - static let like = Criteria(rawValue: 2) -} diff --git a/Sources/ASN1SCG/DirectoryString.swift b/Sources/ASN1SCG/DirectoryString.swift deleted file mode 100644 index 284a8a6..0000000 --- a/Sources/ASN1SCG/DirectoryString.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum DirectoryString: DERParseable, DERSerializable, Hashable, Sendable { - case teletexString(ASN1TeletexString) - case printableString(ASN1PrintableString) - case universalString(ASN1UniversalString) - case utf8String(ASN1UTF8String) - case bmpString(ASN1BMPString) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1TeletexString.defaultIdentifier: - self = .teletexString(try ASN1TeletexString(derEncoded: rootNode)) - case ASN1PrintableString.defaultIdentifier: - self = .printableString(try ASN1PrintableString(derEncoded: rootNode)) - case ASN1UniversalString.defaultIdentifier: - self = .universalString(try ASN1UniversalString(derEncoded: rootNode)) - case ASN1UTF8String.defaultIdentifier: - self = .utf8String(try ASN1UTF8String(derEncoded: rootNode)) - case ASN1BMPString.defaultIdentifier: - self = .bmpString(try ASN1BMPString(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .teletexString(let teletexString): try coder.serialize(teletexString) - case .printableString(let printableString): try coder.serialize(printableString) - case .universalString(let universalString): try coder.serialize(universalString) - case .utf8String(let utf8String): try coder.serialize(utf8String) - case .bmpString(let bmpString): try coder.serialize(bmpString) - } - } - -} diff --git a/Sources/ASN1SCG/DisplayText.swift b/Sources/ASN1SCG/DisplayText.swift deleted file mode 100644 index 8ad9c01..0000000 --- a/Sources/ASN1SCG/DisplayText.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum DisplayText: DERParseable, DERSerializable, Hashable, Sendable { - case ia5String(ASN1IA5String) - case visibleString(VisibleString) - case bmpString(ASN1BMPString) - case utf8String(ASN1UTF8String) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1IA5String.defaultIdentifier: - self = .ia5String(try ASN1IA5String(derEncoded: rootNode)) - case VisibleString.defaultIdentifier: - self = .visibleString(try VisibleString(derEncoded: rootNode)) - case ASN1BMPString.defaultIdentifier: - self = .bmpString(try ASN1BMPString(derEncoded: rootNode)) - case ASN1UTF8String.defaultIdentifier: - self = .utf8String(try ASN1UTF8String(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .ia5String(let ia5String): try coder.serialize(ia5String) - case .visibleString(let visibleString): try coder.serialize(visibleString) - case .bmpString(let bmpString): try coder.serialize(bmpString) - case .utf8String(let utf8String): try coder.serialize(utf8String) - } - } - -} diff --git a/Sources/ASN1SCG/DistributionPoint.swift b/Sources/ASN1SCG/DistributionPoint.swift deleted file mode 100644 index 010bdaa..0000000 --- a/Sources/ASN1SCG/DistributionPoint.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct DistributionPoint: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var distributionPoint: DistributionPointName? - @usableFromInline var reasons: ASN1BitString? - @usableFromInline var cRLIssuer: [GeneralName]? - @inlinable init(distributionPoint: DistributionPointName?, reasons: ASN1BitString?, cRLIssuer: [GeneralName]?) { - self.distributionPoint = distributionPoint - self.reasons = reasons - self.cRLIssuer = cRLIssuer - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let distributionPoint: DistributionPointName? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) - let reasons: ASN1BitString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) - let cRLIssuer: [GeneralName] = try DER.sequence(of: GeneralName.self, identifier: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific), nodes: &nodes) - return DistributionPoint(distributionPoint: distributionPoint, reasons: reasons, cRLIssuer: cRLIssuer) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - if let distributionPoint = self.distributionPoint { try coder.serializeOptionalImplicitlyTagged(distributionPoint, withIdentifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) } - if let reasons = self.reasons { try coder.serializeOptionalImplicitlyTagged(reasons, withIdentifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) } - if let cRLIssuer = self.cRLIssuer { try coder.serializeSequenceOf(cRLIssuer, identifier: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/DistributionPointName.swift b/Sources/ASN1SCG/DistributionPointName.swift deleted file mode 100644 index c5d46a0..0000000 --- a/Sources/ASN1SCG/DistributionPointName.swift +++ /dev/null @@ -1,31 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum DistributionPointName: DERParseable, DERSerializable, Hashable, Sendable { - case fullName([GeneralName]) - case nameRelativeToCRLIssuer([AttributeTypeAndValue]) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific): - self = .fullName(try [GeneralName](derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific): - self = .nameRelativeToCRLIssuer(try [AttributeTypeAndValue](derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .fullName(let fullName): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), - { coder in try coder.serialize(fullName) }) - case .nameRelativeToCRLIssuer(let nameRelativeToCRLIssuer): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific), - { coder in try coder.serialize(nameRelativeToCRLIssuer) }) - } - } - -} diff --git a/Sources/ASN1SCG/Dstu7624Parameters.swift b/Sources/ASN1SCG/Dstu7624Parameters.swift deleted file mode 100644 index e6e4d13..0000000 --- a/Sources/ASN1SCG/Dstu7624Parameters.swift +++ /dev/null @@ -1,25 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Dstu7624Parameters: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var iv: ASN1OctetString - @inlinable init(iv: ASN1OctetString) { - self.iv = iv - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let iv: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - return Dstu7624Parameters(iv: iv) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(iv) - } - } -} diff --git a/Sources/ASN1SCG/EDIPartyName.swift b/Sources/ASN1SCG/EDIPartyName.swift deleted file mode 100644 index 455cfda..0000000 --- a/Sources/ASN1SCG/EDIPartyName.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct EDIPartyName: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var nameAssigner: DirectoryString? - @usableFromInline var partyName: DirectoryString - @inlinable init(nameAssigner: DirectoryString?, partyName: DirectoryString) { - self.nameAssigner = nameAssigner - self.partyName = partyName - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let nameAssigner: DirectoryString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) - let partyName: DirectoryString = (try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)))! - return EDIPartyName(nameAssigner: nameAssigner, partyName: partyName) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - if let nameAssigner = self.nameAssigner { try coder.serializeOptionalImplicitlyTagged(nameAssigner, withIdentifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) } - try coder.serializeOptionalImplicitlyTagged(partyName, withIdentifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) - } - } -} diff --git a/Sources/ASN1SCG/ExtendedNetworkAddress.swift b/Sources/ASN1SCG/ExtendedNetworkAddress.swift deleted file mode 100644 index d76d3f8..0000000 --- a/Sources/ASN1SCG/ExtendedNetworkAddress.swift +++ /dev/null @@ -1,28 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum ExtendedNetworkAddress: DERParseable, DERSerializable, Hashable, Sendable { - case e163_4_address(ExtendedNetworkAddress_e163_4_address_Sequence) - case psap_address(PresentationAddress) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ExtendedNetworkAddress_e163_4_address_Sequence.defaultIdentifier: - self = .e163_4_address(try ExtendedNetworkAddress_e163_4_address_Sequence(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific): - self = .psap_address(try PresentationAddress(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .e163_4_address(let e163_4_address): try coder.serialize(e163_4_address) - case .psap_address(let psap_address): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), - { coder in try coder.serialize(psap_address) }) - } - } - -} diff --git a/Sources/ASN1SCG/ExtendedNetworkAddress_e163_4_address_Sequence.swift b/Sources/ASN1SCG/ExtendedNetworkAddress_e163_4_address_Sequence.swift deleted file mode 100644 index 7ef6efc..0000000 --- a/Sources/ASN1SCG/ExtendedNetworkAddress_e163_4_address_Sequence.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct ExtendedNetworkAddress_e163_4_address_Sequence: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var number: ASN1PrintableString - @usableFromInline var sub_address: ASN1PrintableString? - @inlinable init(number: ASN1PrintableString, sub_address: ASN1PrintableString?) { - self.number = number - self.sub_address = sub_address - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let number: ASN1PrintableString = (try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)))! - let sub_address: ASN1PrintableString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) - return ExtendedNetworkAddress_e163_4_address_Sequence(number: number, sub_address: sub_address) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serializeOptionalImplicitlyTagged(number, withIdentifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) - if let sub_address = self.sub_address { try coder.serializeOptionalImplicitlyTagged(sub_address, withIdentifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/ExtendedRequest.swift b/Sources/ASN1SCG/ExtendedRequest.swift deleted file mode 100644 index e7b19a2..0000000 --- a/Sources/ASN1SCG/ExtendedRequest.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct ExtendedRequest: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var requestName: ASN1OctetString - @usableFromInline var requestValue: ASN1OctetString? - @inlinable init(requestName: ASN1OctetString, requestValue: ASN1OctetString?) { - self.requestName = requestName - self.requestValue = requestValue - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let requestName: ASN1OctetString = (try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)))! - let requestValue: ASN1OctetString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) - return ExtendedRequest(requestName: requestName, requestValue: requestValue) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serializeOptionalImplicitlyTagged(requestName, withIdentifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) - if let requestValue = self.requestValue { try coder.serializeOptionalImplicitlyTagged(requestValue, withIdentifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/ExtendedResponse.swift b/Sources/ASN1SCG/ExtendedResponse.swift deleted file mode 100644 index 949970f..0000000 --- a/Sources/ASN1SCG/ExtendedResponse.swift +++ /dev/null @@ -1,45 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct ExtendedResponse: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var resultCode: LDAPResult_resultCode_Enum - @usableFromInline var matchedDN: ASN1OctetString - @usableFromInline var diagnosticMessage: ASN1OctetString - @usableFromInline var referral: [ASN1OctetString]? - @usableFromInline var responseName: ASN1OctetString? - @usableFromInline var responseValue: ASN1OctetString? - @inlinable init(resultCode: LDAPResult_resultCode_Enum, matchedDN: ASN1OctetString, diagnosticMessage: ASN1OctetString, referral: [ASN1OctetString]?, responseName: ASN1OctetString?, responseValue: ASN1OctetString?) { - self.resultCode = resultCode - self.matchedDN = matchedDN - self.diagnosticMessage = diagnosticMessage - self.referral = referral - self.responseName = responseName - self.responseValue = responseValue - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let resultCode: LDAPResult_resultCode_Enum = try LDAPResult_resultCode_Enum(derEncoded: &nodes) - let matchedDN: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let diagnosticMessage: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let referral: [ASN1OctetString] = try DER.sequence(of: ASN1OctetString.self, identifier: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific), nodes: &nodes) - let responseName: ASN1OctetString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 10, tagClass: .contextSpecific)) - let responseValue: ASN1OctetString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 11, tagClass: .contextSpecific)) - return ExtendedResponse(resultCode: resultCode, matchedDN: matchedDN, diagnosticMessage: diagnosticMessage, referral: referral, responseName: responseName, responseValue: responseValue) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(resultCode) - try coder.serialize(matchedDN) - try coder.serialize(diagnosticMessage) - if let referral = self.referral { try coder.serializeSequenceOf(referral, identifier: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific)) } - if let responseName = self.responseName { try coder.serializeOptionalImplicitlyTagged(responseName, withIdentifier: ASN1Identifier(tagWithNumber: 10, tagClass: .contextSpecific)) } - if let responseValue = self.responseValue { try coder.serializeOptionalImplicitlyTagged(responseValue, withIdentifier: ASN1Identifier(tagWithNumber: 11, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/Extension.swift b/Sources/ASN1SCG/Extension.swift deleted file mode 100644 index 912a2a3..0000000 --- a/Sources/ASN1SCG/Extension.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Extension: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var extnID: ASN1ObjectIdentifier - @usableFromInline var critical: Bool - @usableFromInline var extnValue: ASN1OctetString - @inlinable init(extnID: ASN1ObjectIdentifier, critical: Bool, extnValue: ASN1OctetString) { - self.extnID = extnID - self.critical = critical - self.extnValue = extnValue - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let extnID: ASN1ObjectIdentifier = try ASN1ObjectIdentifier(derEncoded: &nodes) - let critical: Bool = try Bool(derEncoded: &nodes) - let extnValue: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - return Extension(extnID: extnID, critical: critical, extnValue: extnValue) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(extnID) - try coder.serialize(critical) - try coder.serialize(extnValue) - } - } -} diff --git a/Sources/ASN1SCG/ExtensionAttribute.swift b/Sources/ASN1SCG/ExtensionAttribute.swift deleted file mode 100644 index 5faa385..0000000 --- a/Sources/ASN1SCG/ExtensionAttribute.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct ExtensionAttribute: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var extension_attribute_type: ArraySlice - @usableFromInline var extension_attribute_value: ASN1Any - @inlinable init(extension_attribute_type: ArraySlice, extension_attribute_value: ASN1Any) { - self.extension_attribute_type = extension_attribute_type - self.extension_attribute_value = extension_attribute_value - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let extension_attribute_type: ArraySlice = (try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)))! - let extension_attribute_value: ASN1Any = try DER.explicitlyTagged(&nodes, tagNumber: 1, tagClass: .contextSpecific) { node in return try ASN1Any(derEncoded: node) } - return ExtensionAttribute(extension_attribute_type: extension_attribute_type, extension_attribute_value: extension_attribute_value) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serializeOptionalImplicitlyTagged(extension_attribute_type, withIdentifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) - try coder.serialize(explicitlyTaggedWithTagNumber: 1, tagClass: .contextSpecific) { codec in try codec.serialize(extension_attribute_value) } - } - } -} diff --git a/Sources/ASN1SCG/Feature.swift b/Sources/ASN1SCG/Feature.swift deleted file mode 100644 index 9a4ef3d..0000000 --- a/Sources/ASN1SCG/Feature.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Feature: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var id: ASN1OctetString - @usableFromInline var key: ASN1OctetString - @usableFromInline var value: ASN1OctetString - @usableFromInline var group: ASN1OctetString - @inlinable init(id: ASN1OctetString, key: ASN1OctetString, value: ASN1OctetString, group: ASN1OctetString) { - self.id = id - self.key = key - self.value = value - self.group = group - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let id: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let key: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let value: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let group: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - return Feature(id: id, key: key, value: value, group: group) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(id) - try coder.serialize(key) - try coder.serialize(value) - try coder.serialize(group) - } - } -} diff --git a/Sources/ASN1SCG/FileDesc.swift b/Sources/ASN1SCG/FileDesc.swift deleted file mode 100644 index adda803..0000000 --- a/Sources/ASN1SCG/FileDesc.swift +++ /dev/null @@ -1,41 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct FileDesc: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var id: ASN1OctetString - @usableFromInline var mime: ASN1OctetString - @usableFromInline var payload: ASN1Any - @usableFromInline var parentid: ASN1OctetString - @usableFromInline var data: [Feature] - @inlinable init(id: ASN1OctetString, mime: ASN1OctetString, payload: ASN1Any, parentid: ASN1OctetString, data: [Feature]) { - self.id = id - self.mime = mime - self.payload = payload - self.parentid = parentid - self.data = data - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let id: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let mime: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let payload: ASN1Any = try ASN1Any(derEncoded: &nodes) - let parentid: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let data: [Feature] = try DER.sequence(of: Feature.self, identifier: .sequence, nodes: &nodes) - return FileDesc(id: id, mime: mime, payload: payload, parentid: parentid, data: data) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(id) - try coder.serialize(mime) - try coder.serialize(payload) - try coder.serialize(parentid) - try coder.serializeSequenceOf(data) - } - } -} diff --git a/Sources/ASN1SCG/Filter.swift b/Sources/ASN1SCG/Filter.swift deleted file mode 100644 index 73c2482..0000000 --- a/Sources/ASN1SCG/Filter.swift +++ /dev/null @@ -1,89 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum Filter: DERParseable, DERSerializable, Hashable, Sendable { - case and([Filter]) - case or([Filter]) - case not(Filter) - case equalityMatch(AttributeValueAssertion) - case substrings(SubstringFilter) - case greaterOrEqual(AttributeValueAssertion) - case lessOrEqual(AttributeValueAssertion) - case present(ASN1OctetString) - case approxMatch(AttributeValueAssertion) - case extensibleMatch(MatchingRuleAssertion) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific): - self = .and(try DER.set(of: Filter.self, identifier: .set, rootNode: rootNode)) - case ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific): - self = .or(try DER.set(of: Filter.self, identifier: .set, rootNode: rootNode)) - case ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific): - self = .not(try Filter(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific): - self = .equalityMatch(try AttributeValueAssertion(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 4, tagClass: .contextSpecific): - self = .substrings(try SubstringFilter(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 5, tagClass: .contextSpecific): - self = .greaterOrEqual(try AttributeValueAssertion(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 6, tagClass: .contextSpecific): - self = .lessOrEqual(try AttributeValueAssertion(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 7, tagClass: .contextSpecific): - self = .present(try ASN1OctetString(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 8, tagClass: .contextSpecific): - self = .approxMatch(try AttributeValueAssertion(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 9, tagClass: .contextSpecific): - self = .extensibleMatch(try MatchingRuleAssertion(derEncoded: rootNode)) - - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .and(let and): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), - { coder in try coder.serializeSetOf(and) }) - case .or(let or): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific), - { coder in try coder.serializeSetOf(or) }) - case .not(let not): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific), - { coder in try coder.serialize(not) }) - case .equalityMatch(let equalityMatch): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific), - { coder in try coder.serialize(equalityMatch) }) - case .substrings(let substrings): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 4, tagClass: .contextSpecific), - { coder in try coder.serialize(substrings) }) - case .greaterOrEqual(let greaterOrEqual): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 5, tagClass: .contextSpecific), - { coder in try coder.serialize(greaterOrEqual) }) - case .lessOrEqual(let lessOrEqual): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 6, tagClass: .contextSpecific), - { coder in try coder.serialize(lessOrEqual) }) - case .present(let present): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 7, tagClass: .contextSpecific), - { coder in try coder.serialize(present) }) - case .approxMatch(let approxMatch): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 8, tagClass: .contextSpecific), - { coder in try coder.serialize(approxMatch) }) - case .extensibleMatch(let extensibleMatch): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 9, tagClass: .contextSpecific), - { coder in try coder.serialize(extensibleMatch) }) - - } - } - -} diff --git a/Sources/ASN1SCG/Friend.swift b/Sources/ASN1SCG/Friend.swift deleted file mode 100644 index c0cf225..0000000 --- a/Sources/ASN1SCG/Friend.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Friend: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var nickname: ASN1OctetString - @usableFromInline var friend: ASN1OctetString - @usableFromInline var type: Friendship - @inlinable init(nickname: ASN1OctetString, friend: ASN1OctetString, type: Friendship) { - self.nickname = nickname - self.friend = friend - self.type = type - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let nickname: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let friend: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let type: Friendship = try Friendship(derEncoded: &nodes) - return Friend(nickname: nickname, friend: friend, type: type) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(nickname) - try coder.serialize(friend) - try coder.serialize(type) - } - } -} diff --git a/Sources/ASN1SCG/Friendship.swift b/Sources/ASN1SCG/Friendship.swift deleted file mode 100644 index e6717ae..0000000 --- a/Sources/ASN1SCG/Friendship.swift +++ /dev/null @@ -1,22 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct Friendship: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let request = Friendship(rawValue: 1) - static let confirm = Friendship(rawValue: 2) - static let update = Friendship(rawValue: 3) - static let ignore = Friendship(rawValue: 4) - static let ban = Friendship(rawValue: 5) - static let unban = Friendship(rawValue: 6) -} diff --git a/Sources/ASN1SCG/GOST28147Parameters.swift b/Sources/ASN1SCG/GOST28147Parameters.swift deleted file mode 100644 index 7aaec99..0000000 --- a/Sources/ASN1SCG/GOST28147Parameters.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct GOST28147Parameters: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var iv: ASN1OctetString - @usableFromInline var dke: ASN1OctetString - @inlinable init(iv: ASN1OctetString, dke: ASN1OctetString) { - self.iv = iv - self.dke = dke - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let iv: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let dke: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - return GOST28147Parameters(iv: iv, dke: dke) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(iv) - try coder.serialize(dke) - } - } -} diff --git a/Sources/ASN1SCG/GeneralName.swift b/Sources/ASN1SCG/GeneralName.swift deleted file mode 100644 index c851c9a..0000000 --- a/Sources/ASN1SCG/GeneralName.swift +++ /dev/null @@ -1,80 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum GeneralName: DERParseable, DERSerializable, Hashable, Sendable { - case otherName(GeneralName) - case rfc822Name(ASN1IA5String) - case dNSName(ASN1IA5String) - case x400Address(ORAddress) - case directoryName(Name) - case ediPartyName(EDIPartyName) - case uniformResourceIdentifier(ASN1IA5String) - case iPAddress(ASN1OctetString) - case registeredID(ASN1ObjectIdentifier) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific): - self = .otherName(try GeneralName(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific): - self = .rfc822Name(try ASN1IA5String(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific): - self = .dNSName(try ASN1IA5String(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific): - self = .x400Address(try ORAddress(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 4, tagClass: .contextSpecific): - self = .directoryName(try Name(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 5, tagClass: .contextSpecific): - self = .ediPartyName(try EDIPartyName(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 6, tagClass: .contextSpecific): - self = .uniformResourceIdentifier(try ASN1IA5String(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 7, tagClass: .contextSpecific): - self = .iPAddress(try ASN1OctetString(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 8, tagClass: .contextSpecific): - self = .registeredID(try ASN1ObjectIdentifier(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .otherName(let otherName): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), - { coder in try coder.serialize(otherName) }) - case .rfc822Name(let rfc822Name): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific), - { coder in try coder.serialize(rfc822Name) }) - case .dNSName(let dNSName): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific), - { coder in try coder.serialize(dNSName) }) - case .x400Address(let x400Address): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific), - { coder in try coder.serialize(x400Address) }) - case .directoryName(let directoryName): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 4, tagClass: .contextSpecific), - { coder in try coder.serialize(directoryName) }) - case .ediPartyName(let ediPartyName): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 5, tagClass: .contextSpecific), - { coder in try coder.serialize(ediPartyName) }) - case .uniformResourceIdentifier(let uniformResourceIdentifier): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 6, tagClass: .contextSpecific), - { coder in try coder.serialize(uniformResourceIdentifier) }) - case .iPAddress(let iPAddress): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 7, tagClass: .contextSpecific), - { coder in try coder.serialize(iPAddress) }) - case .registeredID(let registeredID): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 8, tagClass: .contextSpecific), - { coder in try coder.serialize(registeredID) }) - } - } - -} diff --git a/Sources/ASN1SCG/GeneralSubtree.swift b/Sources/ASN1SCG/GeneralSubtree.swift deleted file mode 100644 index b31852c..0000000 --- a/Sources/ASN1SCG/GeneralSubtree.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct GeneralSubtree: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var base: GeneralName - @usableFromInline var minimum: ArraySlice - @usableFromInline var maximum: ArraySlice? - @inlinable init(base: GeneralName, minimum: ArraySlice, maximum: ArraySlice?) { - self.base = base - self.minimum = minimum - self.maximum = maximum - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let base: GeneralName = try GeneralName(derEncoded: &nodes) - let minimum: ArraySlice = (try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)))! - let maximum: ArraySlice? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) - return GeneralSubtree(base: base, minimum: minimum, maximum: maximum) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(base) - try coder.serializeOptionalImplicitlyTagged(minimum, withIdentifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) - if let maximum = self.maximum { try coder.serializeOptionalImplicitlyTagged(maximum, withIdentifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/History.swift b/Sources/ASN1SCG/History.swift deleted file mode 100644 index 17d25f2..0000000 --- a/Sources/ASN1SCG/History.swift +++ /dev/null @@ -1,45 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct History: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var nickname: ASN1OctetString - @usableFromInline var feed: History_feed_Choice - @usableFromInline var size: ArraySlice - @usableFromInline var entity_id: ArraySlice - @usableFromInline var data: [Message] - @usableFromInline var status: HistoryStatus - @inlinable init(nickname: ASN1OctetString, feed: History_feed_Choice, size: ArraySlice, entity_id: ArraySlice, data: [Message], status: HistoryStatus) { - self.nickname = nickname - self.feed = feed - self.size = size - self.entity_id = entity_id - self.data = data - self.status = status - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let nickname: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let feed: History_feed_Choice = try History_feed_Choice(derEncoded: &nodes) - let size: ArraySlice = try ArraySlice(derEncoded: &nodes) - let entity_id: ArraySlice = try ArraySlice(derEncoded: &nodes) - let data: [Message] = try DER.sequence(of: Message.self, identifier: .sequence, nodes: &nodes) - let status: HistoryStatus = try HistoryStatus(derEncoded: &nodes) - return History(nickname: nickname, feed: feed, size: size, entity_id: entity_id, data: data, status: status) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(nickname) - try coder.serialize(feed) - try coder.serialize(size) - try coder.serialize(entity_id) - try coder.serializeSequenceOf(data) - try coder.serialize(status) - } - } -} diff --git a/Sources/ASN1SCG/HistoryStatus.swift b/Sources/ASN1SCG/HistoryStatus.swift deleted file mode 100644 index 078a172..0000000 --- a/Sources/ASN1SCG/HistoryStatus.swift +++ /dev/null @@ -1,32 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct HistoryStatus: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let updated = HistoryStatus(rawValue: 1) - static let get = HistoryStatus(rawValue: 2) - static let update = HistoryStatus(rawValue: 3) - static let last_loaded = HistoryStatus(rawValue: 4) - static let last_msg = HistoryStatus(rawValue: 5) - static let get_reply = HistoryStatus(rawValue: 6) - static let double_get = HistoryStatus(rawValue: 7) - static let delete = HistoryStatus(rawValue: 8) - static let image = HistoryStatus(rawValue: 9) - static let video = HistoryStatus(rawValue: 10) - static let file = HistoryStatus(rawValue: 11) - static let link = HistoryStatus(rawValue: 12) - static let audio = HistoryStatus(rawValue: 13) - static let contact = HistoryStatus(rawValue: 14) - static let location = HistoryStatus(rawValue: 15) - static let text = HistoryStatus(rawValue: 16) -} diff --git a/Sources/ASN1SCG/History_feed_Choice.swift b/Sources/ASN1SCG/History_feed_Choice.swift deleted file mode 100644 index bbd53ca..0000000 --- a/Sources/ASN1SCG/History_feed_Choice.swift +++ /dev/null @@ -1,31 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum History_feed_Choice: DERParseable, DERSerializable, Hashable, Sendable { - case p2p(P2P) - case muc(MUC) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific): - self = .p2p(try P2P(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific): - self = .muc(try MUC(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .p2p(let p2p): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), - { coder in try coder.serialize(p2p) }) - case .muc(let muc): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific), - { coder in try coder.serialize(muc) }) - } - } - -} diff --git a/Sources/ASN1SCG/Holder.swift b/Sources/ASN1SCG/Holder.swift deleted file mode 100644 index 4b9af74..0000000 --- a/Sources/ASN1SCG/Holder.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Holder: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var baseCertificateID: IssuerSerial? - @usableFromInline var entityName: [GeneralName]? - @usableFromInline var objectDigestInfo: ObjectDigestInfo? - @inlinable init(baseCertificateID: IssuerSerial?, entityName: [GeneralName]?, objectDigestInfo: ObjectDigestInfo?) { - self.baseCertificateID = baseCertificateID - self.entityName = entityName - self.objectDigestInfo = objectDigestInfo - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let baseCertificateID: IssuerSerial? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) - let entityName: [GeneralName] = try DER.sequence(of: GeneralName.self, identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific), nodes: &nodes) - let objectDigestInfo: ObjectDigestInfo? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific)) - return Holder(baseCertificateID: baseCertificateID, entityName: entityName, objectDigestInfo: objectDigestInfo) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - if let baseCertificateID = self.baseCertificateID { try coder.serializeOptionalImplicitlyTagged(baseCertificateID, withIdentifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) } - if let entityName = self.entityName { try coder.serializeSequenceOf(entityName, identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) } - if let objectDigestInfo = self.objectDigestInfo { try coder.serializeOptionalImplicitlyTagged(objectDigestInfo, withIdentifier: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/IetfAttrSyntax.swift b/Sources/ASN1SCG/IetfAttrSyntax.swift deleted file mode 100644 index 7ab5c9f..0000000 --- a/Sources/ASN1SCG/IetfAttrSyntax.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct IetfAttrSyntax: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var policyAuthority: [GeneralName]? - @usableFromInline var values: [IetfAttrSyntax_values_Choice] - @inlinable init(policyAuthority: [GeneralName]?, values: [IetfAttrSyntax_values_Choice]) { - self.policyAuthority = policyAuthority - self.values = values - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let policyAuthority: [GeneralName] = try DER.sequence(of: GeneralName.self, identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), nodes: &nodes) - let values: [IetfAttrSyntax_values_Choice] = try DER.sequence(of: IetfAttrSyntax_values_Choice.self, identifier: .sequence, nodes: &nodes) - return IetfAttrSyntax(policyAuthority: policyAuthority, values: values) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - if let policyAuthority = self.policyAuthority { try coder.serializeSequenceOf(policyAuthority, identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) } - try coder.serializeSequenceOf(values) - } - } -} diff --git a/Sources/ASN1SCG/IetfAttrSyntax_values_Choice.swift b/Sources/ASN1SCG/IetfAttrSyntax_values_Choice.swift deleted file mode 100644 index b2676ea..0000000 --- a/Sources/ASN1SCG/IetfAttrSyntax_values_Choice.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum IetfAttrSyntax_values_Choice: DERParseable, DERSerializable, Hashable, Sendable { - case octets(ASN1OctetString) - case oid(ASN1ObjectIdentifier) - case string(ASN1UTF8String) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1OctetString.defaultIdentifier: - self = .octets(try ASN1OctetString(derEncoded: rootNode)) - case ASN1ObjectIdentifier.defaultIdentifier: - self = .oid(try ASN1ObjectIdentifier(derEncoded: rootNode)) - case ASN1UTF8String.defaultIdentifier: - self = .string(try ASN1UTF8String(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .octets(let octets): try coder.serialize(octets) - case .oid(let oid): try coder.serialize(oid) - case .string(let string): try coder.serialize(string) - } - } - -} diff --git a/Sources/ASN1SCG/IntermediateResponse.swift b/Sources/ASN1SCG/IntermediateResponse.swift deleted file mode 100644 index 7f8506f..0000000 --- a/Sources/ASN1SCG/IntermediateResponse.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct IntermediateResponse: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var responseName: ASN1OctetString? - @usableFromInline var responseValue: ASN1OctetString? - @inlinable init(responseName: ASN1OctetString?, responseValue: ASN1OctetString?) { - self.responseName = responseName - self.responseValue = responseValue - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let responseName: ASN1OctetString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) - let responseValue: ASN1OctetString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) - return IntermediateResponse(responseName: responseName, responseValue: responseValue) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - if let responseName = self.responseName { try coder.serializeOptionalImplicitlyTagged(responseName, withIdentifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) } - if let responseValue = self.responseValue { try coder.serializeOptionalImplicitlyTagged(responseValue, withIdentifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/IssuerAndSerialNumber.swift b/Sources/ASN1SCG/IssuerAndSerialNumber.swift deleted file mode 100644 index eadb790..0000000 --- a/Sources/ASN1SCG/IssuerAndSerialNumber.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct IssuerAndSerialNumber: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var issuer: Name - @usableFromInline var serialNumber: ArraySlice - @inlinable init(issuer: Name, serialNumber: ArraySlice) { - self.issuer = issuer - self.serialNumber = serialNumber - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let issuer: Name = try Name(derEncoded: &nodes) - let serialNumber: ArraySlice = try ArraySlice(derEncoded: &nodes) - return IssuerAndSerialNumber(issuer: issuer, serialNumber: serialNumber) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(issuer) - try coder.serialize(serialNumber) - } - } -} diff --git a/Sources/ASN1SCG/IssuerSerial.swift b/Sources/ASN1SCG/IssuerSerial.swift deleted file mode 100644 index 6ad75a0..0000000 --- a/Sources/ASN1SCG/IssuerSerial.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct IssuerSerial: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var issuer: [GeneralName] - @usableFromInline var serial: ArraySlice - @usableFromInline var issuerUID: ASN1BitString? - @inlinable init(issuer: [GeneralName], serial: ArraySlice, issuerUID: ASN1BitString?) { - self.issuer = issuer - self.serial = serial - self.issuerUID = issuerUID - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let issuer: [GeneralName] = try DER.sequence(of: GeneralName.self, identifier: .sequence, nodes: &nodes) - let serial: ArraySlice = try ArraySlice(derEncoded: &nodes) - let issuerUID: ASN1BitString? = try ASN1BitString(derEncoded: &nodes) - return IssuerSerial(issuer: issuer, serial: serial, issuerUID: issuerUID) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serializeSequenceOf(issuer) - try coder.serialize(serial) - if let issuerUID = self.issuerUID { try coder.serialize(issuerUID) } - } - } -} diff --git a/Sources/ASN1SCG/K.swift b/Sources/ASN1SCG/K.swift index f07a669..2372cc2 100644 --- a/Sources/ASN1SCG/K.swift +++ b/Sources/ASN1SCG/K.swift @@ -1,33 +1,79 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 import Crypto import Foundation +// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. +import SwiftASN1 @usableFromInline struct K: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var version: K_version_IntEnum - @usableFromInline var x: ArraySlice - @usableFromInline var y: K_y_Sequence - @inlinable init(version: K_version_IntEnum, x: ArraySlice, y: K_y_Sequence) { - self.version = version - self.x = x - self.y = y - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let version = try K_version_IntEnum(rawValue: Int(derEncoded: &nodes)) - let x: ArraySlice = try ArraySlice(derEncoded: &nodes) - let y: K_y_Sequence = try K_y_Sequence(derEncoded: &nodes) - return K(version: version, x: x, y: y) - } + @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } + @usableFromInline var w: [[[Bool]]] + @inlinable init(w: [[[Bool]]]) { + self.w = w + } + + @inlinable init( + derEncoded root: ASN1Node, + withIdentifier identifier: ASN1Identifier + ) throws { + let res = try DER.sequence(root, identifier: .sequence) { nodes3 in + + var w3: [[[Bool]]] = [] + + while let node2 = nodes3.next() { + w3.append( + try DER.sequence(node2, identifier: .sequence) { nodes2 in + + var w2: [[Bool]] = [] + + while let node1 = nodes2.next() { + w2.append( + try DER.set(node1, identifier: .set) { nodes1 in + + var w1: [Bool] = [] + + while let node0 = nodes1.next() { + w1.append( + contentsOf: try DER.sequence( + of: Bool.self, identifier: .sequence, rootNode: node0) + + ) + } + + return w1 + } + + ) + } + return w2 + + } + + ) + } + return w3 + } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(version.rawValue) - try coder.serialize(x) - try coder.serialize(y) + + self.w = res + } + @inlinable func serialize( + into coder: inout DER.Serializer, + withIdentifier identifier: ASN1Identifier + ) throws { + try coder.appendConstructedNode(identifier: identifier) { coder_ in + try coder_.appendConstructedNode(identifier: .sequence) { + codec1 in + for element in w { + try codec1.appendConstructedNode(identifier: .set) { + codec1_1 in + for element_1 in element { + try codec1_1.serializeSequenceOf(element_1) + + } + } + } + } } + } + } diff --git a/Sources/ASN1SCG/K_version_IntEnum.swift b/Sources/ASN1SCG/K_version_IntEnum.swift deleted file mode 100644 index fc8e437..0000000 --- a/Sources/ASN1SCG/K_version_IntEnum.swift +++ /dev/null @@ -1,7 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -public struct K_version_IntEnum : Hashable, Sendable, Comparable { - @usableFromInline var rawValue: Int - @inlinable public static func < (lhs: K_version_IntEnum, rhs: K_version_IntEnum) -> Bool { lhs.rawValue < rhs.rawValue } - @inlinable init(rawValue: Int) { self.rawValue = rawValue } - public static let v1 = Self(rawValue: 1) -} diff --git a/Sources/ASN1SCG/K_y_Sequence.swift b/Sources/ASN1SCG/K_y_Sequence.swift deleted file mode 100644 index ea90ca3..0000000 --- a/Sources/ASN1SCG/K_y_Sequence.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct K_y_Sequence: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var d1: Bool - @usableFromInline var d2: Bool - @usableFromInline var d3: ArraySlice - @usableFromInline var d4: ArraySlice - @inlinable init(d1: Bool, d2: Bool, d3: ArraySlice, d4: ArraySlice) { - self.d1 = d1 - self.d2 = d2 - self.d3 = d3 - self.d4 = d4 - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let d1: Bool = try Bool(derEncoded: &nodes) - let d2: Bool = try Bool(derEncoded: &nodes) - let d3: ArraySlice = try ArraySlice(derEncoded: &nodes) - let d4: ArraySlice = try ArraySlice(derEncoded: &nodes) - return K_y_Sequence(d1: d1, d2: d2, d3: d3, d4: d4) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(d1) - try coder.serialize(d2) - try coder.serialize(d3) - try coder.serialize(d4) - } - } -} diff --git a/Sources/ASN1SCG/KeyTransRecipientInfo.swift b/Sources/ASN1SCG/KeyTransRecipientInfo.swift deleted file mode 100644 index 32902ad..0000000 --- a/Sources/ASN1SCG/KeyTransRecipientInfo.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct KeyTransRecipientInfo: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var version: Int - @usableFromInline var rid: RecipientIdentifier - @usableFromInline var keyEncryptionAlgorithm: AlgorithmIdentifier - @usableFromInline var encryptedKey: ASN1OctetString - @inlinable init(version: Int, rid: RecipientIdentifier, keyEncryptionAlgorithm: AlgorithmIdentifier, encryptedKey: ASN1OctetString) { - self.version = version - self.rid = rid - self.keyEncryptionAlgorithm = keyEncryptionAlgorithm - self.encryptedKey = encryptedKey - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let version: Int = try Int(derEncoded: &nodes) - let rid: RecipientIdentifier = try RecipientIdentifier(derEncoded: &nodes) - let keyEncryptionAlgorithm: AlgorithmIdentifier = try AlgorithmIdentifier(derEncoded: &nodes) - let encryptedKey: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - return KeyTransRecipientInfo(version: version, rid: rid, keyEncryptionAlgorithm: keyEncryptionAlgorithm, encryptedKey: encryptedKey) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(version) - try coder.serialize(rid) - try coder.serialize(keyEncryptionAlgorithm) - try coder.serialize(encryptedKey) - } - } -} diff --git a/Sources/ASN1SCG/LDAPMessage.swift b/Sources/ASN1SCG/LDAPMessage.swift deleted file mode 100644 index 5f7e8ec..0000000 --- a/Sources/ASN1SCG/LDAPMessage.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct LDAPMessage: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var messageID: ArraySlice - @usableFromInline var protocolOp: LDAPMessage_protocolOp_Choice - @usableFromInline var controls: [Control]? - @inlinable init(messageID: ArraySlice, protocolOp: LDAPMessage_protocolOp_Choice, controls: [Control]?) { - self.messageID = messageID - self.protocolOp = protocolOp - self.controls = controls - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let messageID: ArraySlice = try ArraySlice(derEncoded: &nodes) - let protocolOp: LDAPMessage_protocolOp_Choice = try LDAPMessage_protocolOp_Choice(derEncoded: &nodes) - let controls: [Control] = try DER.sequence(of: Control.self, identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), nodes: &nodes) - return LDAPMessage(messageID: messageID, protocolOp: protocolOp, controls: controls) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(messageID) - try coder.serialize(protocolOp) - if let controls = self.controls { try coder.serializeSequenceOf(controls, identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/LDAPMessage_protocolOp_Choice.swift b/Sources/ASN1SCG/LDAPMessage_protocolOp_Choice.swift deleted file mode 100644 index 0f27cc7..0000000 --- a/Sources/ASN1SCG/LDAPMessage_protocolOp_Choice.swift +++ /dev/null @@ -1,103 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum LDAPMessage_protocolOp_Choice: DERParseable, DERSerializable, Hashable, Sendable { - case bindRequest(BindRequest) - case bindResponse(BindResponse) - case unbindRequest(ASN1Null) - case searchRequest(SearchRequest) - case searchResEntry(SearchResultEntry) - case searchResDone(LDAPResult) - case searchResRef([ASN1OctetString]) - case modifyRequest(ModifyRequest) - case modifyResponse(LDAPResult) - case addRequest(AddRequest) - case addResponse(LDAPResult) - case delRequest(ASN1OctetString) - case delResponse(LDAPResult) - case modDNRequest(ModifyDNRequest) - case modDNResponse(LDAPResult) - case compareRequest(CompareRequest) - case compareResponse(LDAPResult) - case abandonRequest(ArraySlice) - case extendedReq(ExtendedRequest) - case extendedResp(ExtendedResponse) - case intermediateResponse(IntermediateResponse) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case BindRequest.defaultIdentifier: - self = .bindRequest(try BindRequest(derEncoded: rootNode)) - case BindResponse.defaultIdentifier: - self = .bindResponse(try BindResponse(derEncoded: rootNode)) - case ASN1Null.defaultIdentifier: - self = .unbindRequest(try ASN1Null(derEncoded: rootNode)) - case SearchRequest.defaultIdentifier: - self = .searchRequest(try SearchRequest(derEncoded: rootNode)) - case SearchResultEntry.defaultIdentifier: - self = .searchResEntry(try SearchResultEntry(derEncoded: rootNode)) - case LDAPResult.defaultIdentifier: - self = .searchResDone(try LDAPResult(derEncoded: rootNode)) - case ASN1Identifier.sequence: - self = .searchResRef(try DER.sequence(of: ASN1OctetString.self, identifier: .sequence, rootNode: rootNode)) - case ModifyRequest.defaultIdentifier: - self = .modifyRequest(try ModifyRequest(derEncoded: rootNode)) - case LDAPResult.defaultIdentifier: - self = .modifyResponse(try LDAPResult(derEncoded: rootNode)) - case AddRequest.defaultIdentifier: - self = .addRequest(try AddRequest(derEncoded: rootNode)) - case LDAPResult.defaultIdentifier: - self = .addResponse(try LDAPResult(derEncoded: rootNode)) - case ASN1OctetString.defaultIdentifier: - self = .delRequest(try ASN1OctetString(derEncoded: rootNode)) - case LDAPResult.defaultIdentifier: - self = .delResponse(try LDAPResult(derEncoded: rootNode)) - case ModifyDNRequest.defaultIdentifier: - self = .modDNRequest(try ModifyDNRequest(derEncoded: rootNode)) - case LDAPResult.defaultIdentifier: - self = .modDNResponse(try LDAPResult(derEncoded: rootNode)) - case CompareRequest.defaultIdentifier: - self = .compareRequest(try CompareRequest(derEncoded: rootNode)) - case LDAPResult.defaultIdentifier: - self = .compareResponse(try LDAPResult(derEncoded: rootNode)) - case ArraySlice.defaultIdentifier: - self = .abandonRequest(try ArraySlice(derEncoded: rootNode)) - case ExtendedRequest.defaultIdentifier: - self = .extendedReq(try ExtendedRequest(derEncoded: rootNode)) - case ExtendedResponse.defaultIdentifier: - self = .extendedResp(try ExtendedResponse(derEncoded: rootNode)) - - case IntermediateResponse.defaultIdentifier: - self = .intermediateResponse(try IntermediateResponse(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .bindRequest(let bindRequest): try coder.serialize(bindRequest) - case .bindResponse(let bindResponse): try coder.serialize(bindResponse) - case .unbindRequest(let unbindRequest): try coder.serialize(unbindRequest) - case .searchRequest(let searchRequest): try coder.serialize(searchRequest) - case .searchResEntry(let searchResEntry): try coder.serialize(searchResEntry) - case .searchResDone(let searchResDone): try coder.serialize(searchResDone) - case .searchResRef(let searchResRef): try coder.serializeSequenceOf(searchResRef) - case .modifyRequest(let modifyRequest): try coder.serialize(modifyRequest) - case .modifyResponse(let modifyResponse): try coder.serialize(modifyResponse) - case .addRequest(let addRequest): try coder.serialize(addRequest) - case .addResponse(let addResponse): try coder.serialize(addResponse) - case .delRequest(let delRequest): try coder.serialize(delRequest) - case .delResponse(let delResponse): try coder.serialize(delResponse) - case .modDNRequest(let modDNRequest): try coder.serialize(modDNRequest) - case .modDNResponse(let modDNResponse): try coder.serialize(modDNResponse) - case .compareRequest(let compareRequest): try coder.serialize(compareRequest) - case .compareResponse(let compareResponse): try coder.serialize(compareResponse) - case .abandonRequest(let abandonRequest): try coder.serialize(abandonRequest) - case .extendedReq(let extendedReq): try coder.serialize(extendedReq) - case .extendedResp(let extendedResp): try coder.serialize(extendedResp) - - case .intermediateResponse(let intermediateResponse): try coder.serialize(intermediateResponse) - } - } - -} diff --git a/Sources/ASN1SCG/LDAPResult.swift b/Sources/ASN1SCG/LDAPResult.swift deleted file mode 100644 index fbd9ac0..0000000 --- a/Sources/ASN1SCG/LDAPResult.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct LDAPResult: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var resultCode: LDAPResult_resultCode_Enum - @usableFromInline var matchedDN: ASN1OctetString - @usableFromInline var diagnosticMessage: ASN1OctetString - @usableFromInline var referral: [ASN1OctetString]? - @inlinable init(resultCode: LDAPResult_resultCode_Enum, matchedDN: ASN1OctetString, diagnosticMessage: ASN1OctetString, referral: [ASN1OctetString]?) { - self.resultCode = resultCode - self.matchedDN = matchedDN - self.diagnosticMessage = diagnosticMessage - self.referral = referral - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let resultCode: LDAPResult_resultCode_Enum = try LDAPResult_resultCode_Enum(derEncoded: &nodes) - let matchedDN: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let diagnosticMessage: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let referral: [ASN1OctetString] = try DER.sequence(of: ASN1OctetString.self, identifier: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific), nodes: &nodes) - return LDAPResult(resultCode: resultCode, matchedDN: matchedDN, diagnosticMessage: diagnosticMessage, referral: referral) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(resultCode) - try coder.serialize(matchedDN) - try coder.serialize(diagnosticMessage) - if let referral = self.referral { try coder.serializeSequenceOf(referral, identifier: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/LDAPResult_resultCode_Enum.swift b/Sources/ASN1SCG/LDAPResult_resultCode_Enum.swift deleted file mode 100644 index 43f9f3a..0000000 --- a/Sources/ASN1SCG/LDAPResult_resultCode_Enum.swift +++ /dev/null @@ -1,55 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct LDAPResult_resultCode_Enum: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let success = LDAPResult_resultCode_Enum(rawValue: 0) - static let operationsError = LDAPResult_resultCode_Enum(rawValue: 1) - static let protocolError = LDAPResult_resultCode_Enum(rawValue: 2) - static let timeLimitExceeded = LDAPResult_resultCode_Enum(rawValue: 3) - static let sizeLimitExceeded = LDAPResult_resultCode_Enum(rawValue: 4) - static let compareFalse = LDAPResult_resultCode_Enum(rawValue: 5) - static let compareTrue = LDAPResult_resultCode_Enum(rawValue: 6) - static let authMethodNotSupported = LDAPResult_resultCode_Enum(rawValue: 7) - static let strongerAuthRequired = LDAPResult_resultCode_Enum(rawValue: 8) - static let referral = LDAPResult_resultCode_Enum(rawValue: 10) - static let adminLimitExceeded = LDAPResult_resultCode_Enum(rawValue: 11) - static let unavailableCriticalExtension = LDAPResult_resultCode_Enum(rawValue: 12) - static let confidentialityRequired = LDAPResult_resultCode_Enum(rawValue: 13) - static let saslBindInProgress = LDAPResult_resultCode_Enum(rawValue: 14) - static let noSuchAttribute = LDAPResult_resultCode_Enum(rawValue: 16) - static let undefinedAttributeType = LDAPResult_resultCode_Enum(rawValue: 17) - static let inappropriateMatching = LDAPResult_resultCode_Enum(rawValue: 18) - static let constraintViolation = LDAPResult_resultCode_Enum(rawValue: 19) - static let attributeOrValueExists = LDAPResult_resultCode_Enum(rawValue: 20) - static let invalidAttributeSyntax = LDAPResult_resultCode_Enum(rawValue: 21) - static let noSuchObject = LDAPResult_resultCode_Enum(rawValue: 32) - static let aliasProblem = LDAPResult_resultCode_Enum(rawValue: 33) - static let invalidDNSyntax = LDAPResult_resultCode_Enum(rawValue: 34) - static let aliasDereferencingProblem = LDAPResult_resultCode_Enum(rawValue: 36) - static let inappropriateAuthentication = LDAPResult_resultCode_Enum(rawValue: 48) - static let invalidCredentials = LDAPResult_resultCode_Enum(rawValue: 49) - static let insufficientAccessRights = LDAPResult_resultCode_Enum(rawValue: 50) - static let busy = LDAPResult_resultCode_Enum(rawValue: 51) - static let unavailable = LDAPResult_resultCode_Enum(rawValue: 52) - static let unwillingToPerform = LDAPResult_resultCode_Enum(rawValue: 53) - static let loopDetect = LDAPResult_resultCode_Enum(rawValue: 54) - static let namingViolation = LDAPResult_resultCode_Enum(rawValue: 64) - static let objectClassViolation = LDAPResult_resultCode_Enum(rawValue: 65) - static let notAllowedOnNonLeaf = LDAPResult_resultCode_Enum(rawValue: 66) - static let notAllowedOnRDN = LDAPResult_resultCode_Enum(rawValue: 67) - static let entryAlreadyExists = LDAPResult_resultCode_Enum(rawValue: 68) - static let objectClassModsProhibited = LDAPResult_resultCode_Enum(rawValue: 69) - static let affectsMultipleDSAs = LDAPResult_resultCode_Enum(rawValue: 71) - static let other = LDAPResult_resultCode_Enum(rawValue: 80) -} diff --git a/Sources/ASN1SCG/List.swift b/Sources/ASN1SCG/List.swift deleted file mode 100644 index 1db0503..0000000 --- a/Sources/ASN1SCG/List.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct List: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var data: ASN1OctetString - @usableFromInline var next: List_next_Choice - @inlinable init(data: ASN1OctetString, next: List_next_Choice) { - self.data = data - self.next = next - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let data: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let next: List_next_Choice = try List_next_Choice(derEncoded: &nodes) - return List(data: data, next: next) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(data) - try coder.serialize(next) - } - } -} diff --git a/Sources/ASN1SCG/List_next_Choice.swift b/Sources/ASN1SCG/List_next_Choice.swift deleted file mode 100644 index 976f7ec..0000000 --- a/Sources/ASN1SCG/List_next_Choice.swift +++ /dev/null @@ -1,32 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum List_next_Choice: DERParseable, DERSerializable, Hashable, Sendable { - case linked_list(List) - case end(ASN1Null) - case ss([ASN1OctetString]) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case List.defaultIdentifier: - self = .linked_list(try List(derEncoded: rootNode)) - case ASN1Null.defaultIdentifier: - self = .end(try ASN1Null(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific): - self = .ss(try DER.set(of: ASN1OctetString.self, identifier: .set, rootNode: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .linked_list(let linked_list): try coder.serialize(linked_list) - case .end(let end): try coder.serialize(end) - case .ss(let ss): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific), - { coder in try coder.serializeSetOf(ss) }) - } - } - -} diff --git a/Sources/ASN1SCG/MQVuserKeyingMaterial.swift b/Sources/ASN1SCG/MQVuserKeyingMaterial.swift deleted file mode 100644 index e542f48..0000000 --- a/Sources/ASN1SCG/MQVuserKeyingMaterial.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct MQVuserKeyingMaterial: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var ephemeralPublicKey: OriginatorPublicKey - @usableFromInline var addedukm: ASN1OctetString? - @inlinable init(ephemeralPublicKey: OriginatorPublicKey, addedukm: ASN1OctetString?) { - self.ephemeralPublicKey = ephemeralPublicKey - self.addedukm = addedukm - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let ephemeralPublicKey: OriginatorPublicKey = try OriginatorPublicKey(derEncoded: &nodes) - let addedukm: ASN1OctetString? = try DER.optionalExplicitlyTagged(&nodes, tagNumber: 0, tagClass: .contextSpecific) { node in return try ASN1OctetString(derEncoded: node) } - return MQVuserKeyingMaterial(ephemeralPublicKey: ephemeralPublicKey, addedukm: addedukm) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(ephemeralPublicKey) - if let addedukm = self.addedukm { try coder.serialize(explicitlyTaggedWithTagNumber: 0, tagClass: .contextSpecific) { codec in try codec.serialize(addedukm) } } - } - } -} diff --git a/Sources/ASN1SCG/MUC.swift b/Sources/ASN1SCG/MUC.swift deleted file mode 100644 index 8f7b586..0000000 --- a/Sources/ASN1SCG/MUC.swift +++ /dev/null @@ -1,25 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct MUC: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var room: ASN1OctetString - @inlinable init(room: ASN1OctetString) { - self.room = room - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let room: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - return MUC(room: room) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(room) - } - } -} diff --git a/Sources/ASN1SCG/MatchingRuleAssertion.swift b/Sources/ASN1SCG/MatchingRuleAssertion.swift deleted file mode 100644 index d687d71..0000000 --- a/Sources/ASN1SCG/MatchingRuleAssertion.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct MatchingRuleAssertion: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var matchingRule: ASN1OctetString? - @usableFromInline var type: ASN1OctetString? - @usableFromInline var matchValue: ASN1OctetString - @usableFromInline var dnAttributes: Bool - @inlinable init(matchingRule: ASN1OctetString?, type: ASN1OctetString?, matchValue: ASN1OctetString, dnAttributes: Bool) { - self.matchingRule = matchingRule - self.type = type - self.matchValue = matchValue - self.dnAttributes = dnAttributes - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let matchingRule: ASN1OctetString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) - let type: ASN1OctetString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific)) - let matchValue: ASN1OctetString = (try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific)))! - let dnAttributes: Bool = (try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 4, tagClass: .contextSpecific)))! - return MatchingRuleAssertion(matchingRule: matchingRule, type: type, matchValue: matchValue, dnAttributes: dnAttributes) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - if let matchingRule = self.matchingRule { try coder.serializeOptionalImplicitlyTagged(matchingRule, withIdentifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) } - if let type = self.type { try coder.serializeOptionalImplicitlyTagged(type, withIdentifier: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific)) } - try coder.serializeOptionalImplicitlyTagged(matchValue, withIdentifier: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific)) - try coder.serializeOptionalImplicitlyTagged(dnAttributes, withIdentifier: ASN1Identifier(tagWithNumber: 4, tagClass: .contextSpecific)) - } - } -} diff --git a/Sources/ASN1SCG/Member.swift b/Sources/ASN1SCG/Member.swift deleted file mode 100644 index fe9c0b3..0000000 --- a/Sources/ASN1SCG/Member.swift +++ /dev/null @@ -1,73 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Member: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var id: ArraySlice - @usableFromInline var feed_id: Member_feed_id_Choice - @usableFromInline var feeds: [ASN1OctetString] - @usableFromInline var phone_id: ASN1OctetString - @usableFromInline var avatar: ASN1OctetString - @usableFromInline var names: [ASN1OctetString] - @usableFromInline var surnames: [ASN1OctetString] - @usableFromInline var alias: ASN1OctetString - @usableFromInline var update: ArraySlice - @usableFromInline var settings: [Feature] - @usableFromInline var services: [Service] - @usableFromInline var presence: PresenceType - @usableFromInline var status: MemberStatus - @inlinable init(id: ArraySlice, feed_id: Member_feed_id_Choice, feeds: [ASN1OctetString], phone_id: ASN1OctetString, avatar: ASN1OctetString, names: [ASN1OctetString], surnames: [ASN1OctetString], alias: ASN1OctetString, update: ArraySlice, settings: [Feature], services: [Service], presence: PresenceType, status: MemberStatus) { - self.id = id - self.feed_id = feed_id - self.feeds = feeds - self.phone_id = phone_id - self.avatar = avatar - self.names = names - self.surnames = surnames - self.alias = alias - self.update = update - self.settings = settings - self.services = services - self.presence = presence - self.status = status - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let id: ArraySlice = try ArraySlice(derEncoded: &nodes) - let feed_id: Member_feed_id_Choice = try Member_feed_id_Choice(derEncoded: &nodes) - let feeds: [ASN1OctetString] = try DER.sequence(of: ASN1OctetString.self, identifier: .sequence, nodes: &nodes) - let phone_id: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let avatar: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let names: [ASN1OctetString] = try DER.sequence(of: ASN1OctetString.self, identifier: .sequence, nodes: &nodes) - let surnames: [ASN1OctetString] = try DER.sequence(of: ASN1OctetString.self, identifier: .sequence, nodes: &nodes) - let alias: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let update: ArraySlice = try ArraySlice(derEncoded: &nodes) - let settings: [Feature] = try DER.sequence(of: Feature.self, identifier: .sequence, nodes: &nodes) - let services: [Service] = try DER.sequence(of: Service.self, identifier: .sequence, nodes: &nodes) - let presence: PresenceType = try PresenceType(derEncoded: &nodes) - let status: MemberStatus = try MemberStatus(derEncoded: &nodes) - return Member(id: id, feed_id: feed_id, feeds: feeds, phone_id: phone_id, avatar: avatar, names: names, surnames: surnames, alias: alias, update: update, settings: settings, services: services, presence: presence, status: status) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(id) - try coder.serialize(feed_id) - try coder.serializeSequenceOf(feeds) - try coder.serialize(phone_id) - try coder.serialize(avatar) - try coder.serializeSequenceOf(names) - try coder.serializeSequenceOf(surnames) - try coder.serialize(alias) - try coder.serialize(update) - try coder.serializeSequenceOf(settings) - try coder.serializeSequenceOf(services) - try coder.serialize(presence) - try coder.serialize(status) - } - } -} diff --git a/Sources/ASN1SCG/MemberStatus.swift b/Sources/ASN1SCG/MemberStatus.swift deleted file mode 100644 index b573a84..0000000 --- a/Sources/ASN1SCG/MemberStatus.swift +++ /dev/null @@ -1,21 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct MemberStatus: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let admin = MemberStatus(rawValue: 1) - static let member = MemberStatus(rawValue: 2) - static let removed = MemberStatus(rawValue: 3) - static let patch = MemberStatus(rawValue: 4) - static let owner = MemberStatus(rawValue: 5) -} diff --git a/Sources/ASN1SCG/Member_feed_id_Choice.swift b/Sources/ASN1SCG/Member_feed_id_Choice.swift deleted file mode 100644 index 0f0b07f..0000000 --- a/Sources/ASN1SCG/Member_feed_id_Choice.swift +++ /dev/null @@ -1,31 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum Member_feed_id_Choice: DERParseable, DERSerializable, Hashable, Sendable { - case p2p(P2P) - case muc(MUC) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific): - self = .p2p(try P2P(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific): - self = .muc(try MUC(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .p2p(let p2p): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), - { coder in try coder.serialize(p2p) }) - case .muc(let muc): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific), - { coder in try coder.serialize(muc) }) - } - } - -} diff --git a/Sources/ASN1SCG/Message.swift b/Sources/ASN1SCG/Message.swift deleted file mode 100644 index 62b25c3..0000000 --- a/Sources/ASN1SCG/Message.swift +++ /dev/null @@ -1,73 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Message: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var id: ASN1OctetString - @usableFromInline var feed_id: Message_feed_id_Choice - @usableFromInline var signature: ASN1OctetString - @usableFromInline var from: ASN1OctetString - @usableFromInline var to: ASN1OctetString - @usableFromInline var created: ArraySlice - @usableFromInline var files: [FileDesc] - @usableFromInline var type: MessageType - @usableFromInline var link: ArraySlice - @usableFromInline var seenby: ASN1OctetString - @usableFromInline var repliedby: ASN1OctetString - @usableFromInline var mentioned: [ASN1OctetString] - @usableFromInline var status: MessageStatus - @inlinable init(id: ASN1OctetString, feed_id: Message_feed_id_Choice, signature: ASN1OctetString, from: ASN1OctetString, to: ASN1OctetString, created: ArraySlice, files: [FileDesc], type: MessageType, link: ArraySlice, seenby: ASN1OctetString, repliedby: ASN1OctetString, mentioned: [ASN1OctetString], status: MessageStatus) { - self.id = id - self.feed_id = feed_id - self.signature = signature - self.from = from - self.to = to - self.created = created - self.files = files - self.type = type - self.link = link - self.seenby = seenby - self.repliedby = repliedby - self.mentioned = mentioned - self.status = status - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let id: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let feed_id: Message_feed_id_Choice = try Message_feed_id_Choice(derEncoded: &nodes) - let signature: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let from: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let to: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let created: ArraySlice = try ArraySlice(derEncoded: &nodes) - let files: [FileDesc] = try DER.sequence(of: FileDesc.self, identifier: .sequence, nodes: &nodes) - let type: MessageType = try MessageType(derEncoded: &nodes) - let link: ArraySlice = try ArraySlice(derEncoded: &nodes) - let seenby: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let repliedby: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let mentioned: [ASN1OctetString] = try DER.sequence(of: ASN1OctetString.self, identifier: .sequence, nodes: &nodes) - let status: MessageStatus = try MessageStatus(derEncoded: &nodes) - return Message(id: id, feed_id: feed_id, signature: signature, from: from, to: to, created: created, files: files, type: type, link: link, seenby: seenby, repliedby: repliedby, mentioned: mentioned, status: status) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(id) - try coder.serialize(feed_id) - try coder.serialize(signature) - try coder.serialize(from) - try coder.serialize(to) - try coder.serialize(created) - try coder.serializeSequenceOf(files) - try coder.serialize(type) - try coder.serialize(link) - try coder.serialize(seenby) - try coder.serialize(repliedby) - try coder.serializeSequenceOf(mentioned) - try coder.serialize(status) - } - } -} diff --git a/Sources/ASN1SCG/MessageStatus.swift b/Sources/ASN1SCG/MessageStatus.swift deleted file mode 100644 index 490ce86..0000000 --- a/Sources/ASN1SCG/MessageStatus.swift +++ /dev/null @@ -1,21 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct MessageStatus: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let async = MessageStatus(rawValue: 1) - static let delete = MessageStatus(rawValue: 2) - static let clear = MessageStatus(rawValue: 3) - static let update = MessageStatus(rawValue: 4) - static let edit = MessageStatus(rawValue: 5) -} diff --git a/Sources/ASN1SCG/MessageType.swift b/Sources/ASN1SCG/MessageType.swift deleted file mode 100644 index 155a725..0000000 --- a/Sources/ASN1SCG/MessageType.swift +++ /dev/null @@ -1,21 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct MessageType: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let sys = MessageType(rawValue: 1) - static let reply = MessageType(rawValue: 2) - static let forward = MessageType(rawValue: 3) - static let read = MessageType(rawValue: 4) - static let edited = MessageType(rawValue: 5) -} diff --git a/Sources/ASN1SCG/Message_feed_id_Choice.swift b/Sources/ASN1SCG/Message_feed_id_Choice.swift deleted file mode 100644 index e7f1a9f..0000000 --- a/Sources/ASN1SCG/Message_feed_id_Choice.swift +++ /dev/null @@ -1,31 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum Message_feed_id_Choice: DERParseable, DERSerializable, Hashable, Sendable { - case p2p(P2P) - case muc(MUC) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific): - self = .p2p(try P2P(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific): - self = .muc(try MUC(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .p2p(let p2p): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), - { coder in try coder.serialize(p2p) }) - case .muc(let muc): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific), - { coder in try coder.serialize(muc) }) - } - } - -} diff --git a/Sources/ASN1SCG/ModifyDNRequest.swift b/Sources/ASN1SCG/ModifyDNRequest.swift deleted file mode 100644 index aec9196..0000000 --- a/Sources/ASN1SCG/ModifyDNRequest.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct ModifyDNRequest: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var entry: ASN1OctetString - @usableFromInline var newrdn: ASN1OctetString - @usableFromInline var deleteoldrdn: Bool - @usableFromInline var newSuperior: ASN1OctetString? - @inlinable init(entry: ASN1OctetString, newrdn: ASN1OctetString, deleteoldrdn: Bool, newSuperior: ASN1OctetString?) { - self.entry = entry - self.newrdn = newrdn - self.deleteoldrdn = deleteoldrdn - self.newSuperior = newSuperior - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let entry: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let newrdn: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let deleteoldrdn: Bool = try Bool(derEncoded: &nodes) - let newSuperior: ASN1OctetString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) - return ModifyDNRequest(entry: entry, newrdn: newrdn, deleteoldrdn: deleteoldrdn, newSuperior: newSuperior) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(entry) - try coder.serialize(newrdn) - try coder.serialize(deleteoldrdn) - if let newSuperior = self.newSuperior { try coder.serializeOptionalImplicitlyTagged(newSuperior, withIdentifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/ModifyRequest.swift b/Sources/ASN1SCG/ModifyRequest.swift deleted file mode 100644 index a24b781..0000000 --- a/Sources/ASN1SCG/ModifyRequest.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct ModifyRequest: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var object: ASN1OctetString - @usableFromInline var changes: [ModifyRequest_changes_Sequence] - @inlinable init(object: ASN1OctetString, changes: [ModifyRequest_changes_Sequence]) { - self.object = object - self.changes = changes - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let object: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let changes: [ModifyRequest_changes_Sequence] = try DER.sequence(of: ModifyRequest_changes_Sequence.self, identifier: .sequence, nodes: &nodes) - return ModifyRequest(object: object, changes: changes) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(object) - try coder.serializeSequenceOf(changes) - } - } -} diff --git a/Sources/ASN1SCG/ModifyRequest_changes_Sequence.swift b/Sources/ASN1SCG/ModifyRequest_changes_Sequence.swift deleted file mode 100644 index e9000bc..0000000 --- a/Sources/ASN1SCG/ModifyRequest_changes_Sequence.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct ModifyRequest_changes_Sequence: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var operation: ModifyRequest_changes_Sequence_operation_Enum - @usableFromInline var modification: PartialAttribute - @inlinable init(operation: ModifyRequest_changes_Sequence_operation_Enum, modification: PartialAttribute) { - self.operation = operation - self.modification = modification - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let operation: ModifyRequest_changes_Sequence_operation_Enum = try ModifyRequest_changes_Sequence_operation_Enum(derEncoded: &nodes) - let modification: PartialAttribute = try PartialAttribute(derEncoded: &nodes) - return ModifyRequest_changes_Sequence(operation: operation, modification: modification) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(operation) - try coder.serialize(modification) - } - } -} diff --git a/Sources/ASN1SCG/ModifyRequest_changes_Sequence_operation_Enum.swift b/Sources/ASN1SCG/ModifyRequest_changes_Sequence_operation_Enum.swift deleted file mode 100644 index ba92a71..0000000 --- a/Sources/ASN1SCG/ModifyRequest_changes_Sequence_operation_Enum.swift +++ /dev/null @@ -1,19 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct ModifyRequest_changes_Sequence_operation_Enum: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let add = ModifyRequest_changes_Sequence_operation_Enum(rawValue: 0) - static let delete = ModifyRequest_changes_Sequence_operation_Enum(rawValue: 1) - static let replace = ModifyRequest_changes_Sequence_operation_Enum(rawValue: 2) -} diff --git a/Sources/ASN1SCG/Name.swift b/Sources/ASN1SCG/Name.swift deleted file mode 100644 index 0af071b..0000000 --- a/Sources/ASN1SCG/Name.swift +++ /dev/null @@ -1,21 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum Name: DERParseable, DERSerializable, Hashable, Sendable { - case rdnSequence([[AttributeTypeAndValue]]) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case [[AttributeTypeAndValue]].defaultIdentifier: - self = .rdnSequence(try [[AttributeTypeAndValue]](derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .rdnSequence(let rdnSequence): try coder.serialize(rdnSequence) - } - } - -} diff --git a/Sources/ASN1SCG/NameConstraints.swift b/Sources/ASN1SCG/NameConstraints.swift deleted file mode 100644 index c23b5c9..0000000 --- a/Sources/ASN1SCG/NameConstraints.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct NameConstraints: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var permittedSubtrees: [GeneralSubtree]? - @usableFromInline var excludedSubtrees: [GeneralSubtree]? - @inlinable init(permittedSubtrees: [GeneralSubtree]?, excludedSubtrees: [GeneralSubtree]?) { - self.permittedSubtrees = permittedSubtrees - self.excludedSubtrees = excludedSubtrees - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let permittedSubtrees: [GeneralSubtree] = try DER.sequence(of: GeneralSubtree.self, identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), nodes: &nodes) - let excludedSubtrees: [GeneralSubtree] = try DER.sequence(of: GeneralSubtree.self, identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific), nodes: &nodes) - return NameConstraints(permittedSubtrees: permittedSubtrees, excludedSubtrees: excludedSubtrees) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - if let permittedSubtrees = self.permittedSubtrees { try coder.serializeSequenceOf(permittedSubtrees, identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) } - if let excludedSubtrees = self.excludedSubtrees { try coder.serializeSequenceOf(excludedSubtrees, identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/NoticeReference.swift b/Sources/ASN1SCG/NoticeReference.swift deleted file mode 100644 index 5ed1e18..0000000 --- a/Sources/ASN1SCG/NoticeReference.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct NoticeReference: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var organization: DisplayText - @usableFromInline var noticeNumbers: [ArraySlice] - @inlinable init(organization: DisplayText, noticeNumbers: [ArraySlice]) { - self.organization = organization - self.noticeNumbers = noticeNumbers - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let organization: DisplayText = try DisplayText(derEncoded: &nodes) - let noticeNumbers: [ArraySlice] = try DER.sequence(of: ArraySlice.self, identifier: .sequence, nodes: &nodes) - return NoticeReference(organization: organization, noticeNumbers: noticeNumbers) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(organization) - try coder.serializeSequenceOf(noticeNumbers) - } - } -} diff --git a/Sources/ASN1SCG/ORAddress.swift b/Sources/ASN1SCG/ORAddress.swift deleted file mode 100644 index 280849f..0000000 --- a/Sources/ASN1SCG/ORAddress.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct ORAddress: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var built_in_standard_attributes: BuiltInStandardAttributes - @usableFromInline var built_in_domain_defined_attributes: [BuiltInDomainDefinedAttribute]? - @usableFromInline var extension_attributes: [ExtensionAttribute]? - @inlinable init(built_in_standard_attributes: BuiltInStandardAttributes, built_in_domain_defined_attributes: [BuiltInDomainDefinedAttribute]?, extension_attributes: [ExtensionAttribute]?) { - self.built_in_standard_attributes = built_in_standard_attributes - self.built_in_domain_defined_attributes = built_in_domain_defined_attributes - self.extension_attributes = extension_attributes - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let built_in_standard_attributes: BuiltInStandardAttributes = try BuiltInStandardAttributes(derEncoded: &nodes) - let built_in_domain_defined_attributes: [BuiltInDomainDefinedAttribute]? = try DER.sequence(of: BuiltInDomainDefinedAttribute.self, identifier: .sequence, nodes: &nodes) - let extension_attributes: [ExtensionAttribute]? = try DER.set(of: ExtensionAttribute.self, identifier: .set, nodes: &nodes) - return ORAddress(built_in_standard_attributes: built_in_standard_attributes, built_in_domain_defined_attributes: built_in_domain_defined_attributes, extension_attributes: extension_attributes) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(built_in_standard_attributes) - if let built_in_domain_defined_attributes = self.built_in_domain_defined_attributes { try coder.serializeSequenceOf(built_in_domain_defined_attributes) } - if let extension_attributes = self.extension_attributes { try coder.serializeSetOf(extension_attributes) } - } - } -} diff --git a/Sources/ASN1SCG/OS.swift b/Sources/ASN1SCG/OS.swift deleted file mode 100644 index a64c2f8..0000000 --- a/Sources/ASN1SCG/OS.swift +++ /dev/null @@ -1,20 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct OS: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let apple = OS(rawValue: 1) - static let microsoft = OS(rawValue: 2) - static let google = OS(rawValue: 3) - static let ericsson = OS(rawValue: 4) -} diff --git a/Sources/ASN1SCG/ObjectDigestInfo.swift b/Sources/ASN1SCG/ObjectDigestInfo.swift deleted file mode 100644 index e6e997a..0000000 --- a/Sources/ASN1SCG/ObjectDigestInfo.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct ObjectDigestInfo: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var digestedObjectType: ObjectDigestInfo_digestedObjectType_Enum - @usableFromInline var otherObjectTypeID: ASN1ObjectIdentifier? - @usableFromInline var digestAlgorithm: AlgorithmIdentifier - @usableFromInline var objectDigest: ASN1BitString - @inlinable init(digestedObjectType: ObjectDigestInfo_digestedObjectType_Enum, otherObjectTypeID: ASN1ObjectIdentifier?, digestAlgorithm: AlgorithmIdentifier, objectDigest: ASN1BitString) { - self.digestedObjectType = digestedObjectType - self.otherObjectTypeID = otherObjectTypeID - self.digestAlgorithm = digestAlgorithm - self.objectDigest = objectDigest - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let digestedObjectType: ObjectDigestInfo_digestedObjectType_Enum = try ObjectDigestInfo_digestedObjectType_Enum(derEncoded: &nodes) - let otherObjectTypeID: ASN1ObjectIdentifier? = try ASN1ObjectIdentifier(derEncoded: &nodes) - let digestAlgorithm: AlgorithmIdentifier = try AlgorithmIdentifier(derEncoded: &nodes) - let objectDigest: ASN1BitString = try ASN1BitString(derEncoded: &nodes) - return ObjectDigestInfo(digestedObjectType: digestedObjectType, otherObjectTypeID: otherObjectTypeID, digestAlgorithm: digestAlgorithm, objectDigest: objectDigest) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(digestedObjectType) - if let otherObjectTypeID = self.otherObjectTypeID { try coder.serialize(otherObjectTypeID) } - try coder.serialize(digestAlgorithm) - try coder.serialize(objectDigest) - } - } -} diff --git a/Sources/ASN1SCG/ObjectDigestInfo_digestedObjectType_Enum.swift b/Sources/ASN1SCG/ObjectDigestInfo_digestedObjectType_Enum.swift deleted file mode 100644 index 2402b40..0000000 --- a/Sources/ASN1SCG/ObjectDigestInfo_digestedObjectType_Enum.swift +++ /dev/null @@ -1,19 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct ObjectDigestInfo_digestedObjectType_Enum: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let publicKey = ObjectDigestInfo_digestedObjectType_Enum(rawValue: 0) - static let publicKeyCert = ObjectDigestInfo_digestedObjectType_Enum(rawValue: 1) - static let otherObjectTypes = ObjectDigestInfo_digestedObjectType_Enum(rawValue: 2) -} diff --git a/Sources/ASN1SCG/OriginatorIdentifierOrKey.swift b/Sources/ASN1SCG/OriginatorIdentifierOrKey.swift deleted file mode 100644 index f7453de..0000000 --- a/Sources/ASN1SCG/OriginatorIdentifierOrKey.swift +++ /dev/null @@ -1,35 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum OriginatorIdentifierOrKey: DERParseable, DERSerializable, Hashable, Sendable { - case issuerAndSerialNumber(IssuerAndSerialNumber) - case subjectKeyIdentifier(ASN1OctetString) - case originatorKey(OriginatorPublicKey) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case IssuerAndSerialNumber.defaultIdentifier: - self = .issuerAndSerialNumber(try IssuerAndSerialNumber(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific): - self = .subjectKeyIdentifier(try ASN1OctetString(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific): - self = .originatorKey(try OriginatorPublicKey(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .issuerAndSerialNumber(let issuerAndSerialNumber): try coder.serialize(issuerAndSerialNumber) - case .subjectKeyIdentifier(let subjectKeyIdentifier): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), - { coder in try coder.serialize(subjectKeyIdentifier) }) - case .originatorKey(let originatorKey): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific), - { coder in try coder.serialize(originatorKey) }) - } - } - -} diff --git a/Sources/ASN1SCG/OriginatorPublicKey.swift b/Sources/ASN1SCG/OriginatorPublicKey.swift deleted file mode 100644 index cafe6ff..0000000 --- a/Sources/ASN1SCG/OriginatorPublicKey.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct OriginatorPublicKey: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var algorithm: AlgorithmIdentifier - @usableFromInline var publicKey: ASN1BitString - @inlinable init(algorithm: AlgorithmIdentifier, publicKey: ASN1BitString) { - self.algorithm = algorithm - self.publicKey = publicKey - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let algorithm: AlgorithmIdentifier = try AlgorithmIdentifier(derEncoded: &nodes) - let publicKey: ASN1BitString = try ASN1BitString(derEncoded: &nodes) - return OriginatorPublicKey(algorithm: algorithm, publicKey: publicKey) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(algorithm) - try coder.serialize(publicKey) - } - } -} diff --git a/Sources/ASN1SCG/OtherCertificateFormat.swift b/Sources/ASN1SCG/OtherCertificateFormat.swift deleted file mode 100644 index dd74eed..0000000 --- a/Sources/ASN1SCG/OtherCertificateFormat.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct OtherCertificateFormat: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var otherCertFormat: id - @usableFromInline var otherCert: Type - @inlinable init(otherCertFormat: id, otherCert: Type) { - self.otherCertFormat = otherCertFormat - self.otherCert = otherCert - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let otherCertFormat: id = try id(derEncoded: &nodes) - let otherCert: Type = try Type(derEncoded: &nodes) - return OtherCertificateFormat(otherCertFormat: otherCertFormat, otherCert: otherCert) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(otherCertFormat) - try coder.serialize(otherCert) - } - } -} diff --git a/Sources/ASN1SCG/OtherKeyAttribute.swift b/Sources/ASN1SCG/OtherKeyAttribute.swift deleted file mode 100644 index caa759c..0000000 --- a/Sources/ASN1SCG/OtherKeyAttribute.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct OtherKeyAttribute: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var keyAttrId: id - @usableFromInline var keyAttr: Type - @inlinable init(keyAttrId: id, keyAttr: Type) { - self.keyAttrId = keyAttrId - self.keyAttr = keyAttr - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let keyAttrId: id = try id(derEncoded: &nodes) - let keyAttr: Type = try Type(derEncoded: &nodes) - return OtherKeyAttribute(keyAttrId: keyAttrId, keyAttr: keyAttr) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(keyAttrId) - try coder.serialize(keyAttr) - } - } -} diff --git a/Sources/ASN1SCG/OtherRecipientInfo.swift b/Sources/ASN1SCG/OtherRecipientInfo.swift deleted file mode 100644 index 30817b7..0000000 --- a/Sources/ASN1SCG/OtherRecipientInfo.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct OtherRecipientInfo: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var oriType: id - @usableFromInline var oriValue: Type - @inlinable init(oriType: id, oriValue: Type) { - self.oriType = oriType - self.oriValue = oriValue - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let oriType: id = try id(derEncoded: &nodes) - let oriValue: Type = try Type(derEncoded: &nodes) - return OtherRecipientInfo(oriType: oriType, oriValue: oriValue) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(oriType) - try coder.serialize(oriValue) - } - } -} diff --git a/Sources/ASN1SCG/OtherRevocationInfoFormat.swift b/Sources/ASN1SCG/OtherRevocationInfoFormat.swift deleted file mode 100644 index a379348..0000000 --- a/Sources/ASN1SCG/OtherRevocationInfoFormat.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct OtherRevocationInfoFormat: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var otherRevInfoFormat: id - @usableFromInline var otherRevInfo: Type - @inlinable init(otherRevInfoFormat: id, otherRevInfo: Type) { - self.otherRevInfoFormat = otherRevInfoFormat - self.otherRevInfo = otherRevInfo - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let otherRevInfoFormat: id = try id(derEncoded: &nodes) - let otherRevInfo: Type = try Type(derEncoded: &nodes) - return OtherRevocationInfoFormat(otherRevInfoFormat: otherRevInfoFormat, otherRevInfo: otherRevInfo) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(otherRevInfoFormat) - try coder.serialize(otherRevInfo) - } - } -} diff --git a/Sources/ASN1SCG/P2P.swift b/Sources/ASN1SCG/P2P.swift deleted file mode 100644 index 01e2050..0000000 --- a/Sources/ASN1SCG/P2P.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct P2P: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var src: ASN1OctetString - @usableFromInline var dst: ASN1OctetString - @inlinable init(src: ASN1OctetString, dst: ASN1OctetString) { - self.src = src - self.dst = dst - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let src: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let dst: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - return P2P(src: src, dst: dst) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(src) - try coder.serialize(dst) - } - } -} diff --git a/Sources/ASN1SCG/PDSParameter.swift b/Sources/ASN1SCG/PDSParameter.swift deleted file mode 100644 index 6521564..0000000 --- a/Sources/ASN1SCG/PDSParameter.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct PDSParameter: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .set } - @usableFromInline var printable_string: ASN1PrintableString? - @usableFromInline var teletex_string: ASN1TeletexString? - @inlinable init(printable_string: ASN1PrintableString?, teletex_string: ASN1TeletexString?) { - self.printable_string = printable_string - self.teletex_string = teletex_string - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.set(root, identifier: identifier) { nodes in - let printable_string: ASN1PrintableString? = try ASN1PrintableString(derEncoded: &nodes) - let teletex_string: ASN1TeletexString? = try ASN1TeletexString(derEncoded: &nodes) - return PDSParameter(printable_string: printable_string, teletex_string: teletex_string) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - if let printable_string = self.printable_string { try coder.serialize(printable_string) } - if let teletex_string = self.teletex_string { try coder.serialize(teletex_string) } - } - } -} diff --git a/Sources/ASN1SCG/PartialAttribute.swift b/Sources/ASN1SCG/PartialAttribute.swift deleted file mode 100644 index 914d77b..0000000 --- a/Sources/ASN1SCG/PartialAttribute.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct PartialAttribute: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var type: ASN1OctetString - @usableFromInline var vals: [ASN1OctetString] - @inlinable init(type: ASN1OctetString, vals: [ASN1OctetString]) { - self.type = type - self.vals = vals - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let type: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let vals: [ASN1OctetString] = try DER.set(of: ASN1OctetString.self, identifier: .set, nodes: &nodes) - return PartialAttribute(type: type, vals: vals) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(type) - try coder.serializeSetOf(vals) - } - } -} diff --git a/Sources/ASN1SCG/PersonalName.swift b/Sources/ASN1SCG/PersonalName.swift deleted file mode 100644 index ce3c21d..0000000 --- a/Sources/ASN1SCG/PersonalName.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct PersonalName: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .set } - @usableFromInline var surname: ASN1PrintableString - @usableFromInline var given_name: ASN1PrintableString? - @usableFromInline var initials: ASN1PrintableString? - @usableFromInline var generation_qualifier: ASN1PrintableString? - @inlinable init(surname: ASN1PrintableString, given_name: ASN1PrintableString?, initials: ASN1PrintableString?, generation_qualifier: ASN1PrintableString?) { - self.surname = surname - self.given_name = given_name - self.initials = initials - self.generation_qualifier = generation_qualifier - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.set(root, identifier: identifier) { nodes in - let surname: ASN1PrintableString = (try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)))! - let given_name: ASN1PrintableString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) - let initials: ASN1PrintableString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific)) - let generation_qualifier: ASN1PrintableString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific)) - return PersonalName(surname: surname, given_name: given_name, initials: initials, generation_qualifier: generation_qualifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serializeOptionalImplicitlyTagged(surname, withIdentifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) - if let given_name = self.given_name { try coder.serializeOptionalImplicitlyTagged(given_name, withIdentifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) } - if let initials = self.initials { try coder.serializeOptionalImplicitlyTagged(initials, withIdentifier: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific)) } - if let generation_qualifier = self.generation_qualifier { try coder.serializeOptionalImplicitlyTagged(generation_qualifier, withIdentifier: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/PhysicalDeliveryCountryName.swift b/Sources/ASN1SCG/PhysicalDeliveryCountryName.swift deleted file mode 100644 index 7000dd5..0000000 --- a/Sources/ASN1SCG/PhysicalDeliveryCountryName.swift +++ /dev/null @@ -1,25 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum PhysicalDeliveryCountryName: DERParseable, DERSerializable, Hashable, Sendable { - case x121_dcc_code(ASN1PrintableString) - case iso_3166_alpha2_code(ASN1PrintableString) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1PrintableString.defaultIdentifier: - self = .x121_dcc_code(try ASN1PrintableString(derEncoded: rootNode)) - case ASN1PrintableString.defaultIdentifier: - self = .iso_3166_alpha2_code(try ASN1PrintableString(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .x121_dcc_code(let x121_dcc_code): try coder.serialize(x121_dcc_code) - case .iso_3166_alpha2_code(let iso_3166_alpha2_code): try coder.serialize(iso_3166_alpha2_code) - } - } - -} diff --git a/Sources/ASN1SCG/PolicyConstraints.swift b/Sources/ASN1SCG/PolicyConstraints.swift deleted file mode 100644 index e9cbc9e..0000000 --- a/Sources/ASN1SCG/PolicyConstraints.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct PolicyConstraints: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var requireExplicitPolicy: ArraySlice? - @usableFromInline var inhibitPolicyMapping: ArraySlice? - @inlinable init(requireExplicitPolicy: ArraySlice?, inhibitPolicyMapping: ArraySlice?) { - self.requireExplicitPolicy = requireExplicitPolicy - self.inhibitPolicyMapping = inhibitPolicyMapping - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let requireExplicitPolicy: ArraySlice? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) - let inhibitPolicyMapping: ArraySlice? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) - return PolicyConstraints(requireExplicitPolicy: requireExplicitPolicy, inhibitPolicyMapping: inhibitPolicyMapping) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - if let requireExplicitPolicy = self.requireExplicitPolicy { try coder.serializeOptionalImplicitlyTagged(requireExplicitPolicy, withIdentifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) } - if let inhibitPolicyMapping = self.inhibitPolicyMapping { try coder.serializeOptionalImplicitlyTagged(inhibitPolicyMapping, withIdentifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/PolicyInformation.swift b/Sources/ASN1SCG/PolicyInformation.swift deleted file mode 100644 index db00bf2..0000000 --- a/Sources/ASN1SCG/PolicyInformation.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct PolicyInformation: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var policyIdentifier: ASN1ObjectIdentifier - @usableFromInline var policyQualifiers: [PolicyQualifierInfo]? - @inlinable init(policyIdentifier: ASN1ObjectIdentifier, policyQualifiers: [PolicyQualifierInfo]?) { - self.policyIdentifier = policyIdentifier - self.policyQualifiers = policyQualifiers - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let policyIdentifier: ASN1ObjectIdentifier = try ASN1ObjectIdentifier(derEncoded: &nodes) - let policyQualifiers: [PolicyQualifierInfo]? = try DER.sequence(of: PolicyQualifierInfo.self, identifier: .sequence, nodes: &nodes) - return PolicyInformation(policyIdentifier: policyIdentifier, policyQualifiers: policyQualifiers) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(policyIdentifier) - if let policyQualifiers = self.policyQualifiers { try coder.serializeSequenceOf(policyQualifiers) } - } - } -} diff --git a/Sources/ASN1SCG/PolicyQualifierInfo.swift b/Sources/ASN1SCG/PolicyQualifierInfo.swift deleted file mode 100644 index c6afdf3..0000000 --- a/Sources/ASN1SCG/PolicyQualifierInfo.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct PolicyQualifierInfo: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var policyQualifierId: id - @usableFromInline var qualifier: Type - @inlinable init(policyQualifierId: id, qualifier: Type) { - self.policyQualifierId = policyQualifierId - self.qualifier = qualifier - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let policyQualifierId: id = try id(derEncoded: &nodes) - let qualifier: Type = try Type(derEncoded: &nodes) - return PolicyQualifierInfo(policyQualifierId: policyQualifierId, qualifier: qualifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(policyQualifierId) - try coder.serialize(qualifier) - } - } -} diff --git a/Sources/ASN1SCG/PostalCode.swift b/Sources/ASN1SCG/PostalCode.swift deleted file mode 100644 index df55fd2..0000000 --- a/Sources/ASN1SCG/PostalCode.swift +++ /dev/null @@ -1,25 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum PostalCode: DERParseable, DERSerializable, Hashable, Sendable { - case numeric_code(ASN1PrintableString) - case printable_code(ASN1PrintableString) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1PrintableString.defaultIdentifier: - self = .numeric_code(try ASN1PrintableString(derEncoded: rootNode)) - case ASN1PrintableString.defaultIdentifier: - self = .printable_code(try ASN1PrintableString(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .numeric_code(let numeric_code): try coder.serialize(numeric_code) - case .printable_code(let printable_code): try coder.serialize(printable_code) - } - } - -} diff --git a/Sources/ASN1SCG/Presence.swift b/Sources/ASN1SCG/Presence.swift deleted file mode 100644 index 01f5898..0000000 --- a/Sources/ASN1SCG/Presence.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Presence: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var nickname: ASN1OctetString - @usableFromInline var status: PresenceType - @inlinable init(nickname: ASN1OctetString, status: PresenceType) { - self.nickname = nickname - self.status = status - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let nickname: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let status: PresenceType = try PresenceType(derEncoded: &nodes) - return Presence(nickname: nickname, status: status) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(nickname) - try coder.serialize(status) - } - } -} diff --git a/Sources/ASN1SCG/PresenceType.swift b/Sources/ASN1SCG/PresenceType.swift deleted file mode 100644 index 2f36c69..0000000 --- a/Sources/ASN1SCG/PresenceType.swift +++ /dev/null @@ -1,18 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct PresenceType: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let offline = PresenceType(rawValue: 1) - static let online = PresenceType(rawValue: 2) -} diff --git a/Sources/ASN1SCG/PresentationAddress.swift b/Sources/ASN1SCG/PresentationAddress.swift deleted file mode 100644 index 8bb286e..0000000 --- a/Sources/ASN1SCG/PresentationAddress.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct PresentationAddress: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var pSelector: ASN1OctetString? - @usableFromInline var sSelector: ASN1OctetString? - @usableFromInline var tSelector: ASN1OctetString? - @usableFromInline var nAddresses: [ASN1OctetString] - @inlinable init(pSelector: ASN1OctetString?, sSelector: ASN1OctetString?, tSelector: ASN1OctetString?, nAddresses: [ASN1OctetString]) { - self.pSelector = pSelector - self.sSelector = sSelector - self.tSelector = tSelector - self.nAddresses = nAddresses - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let pSelector: ASN1OctetString? = try DER.optionalExplicitlyTagged(&nodes, tagNumber: 0, tagClass: .contextSpecific) { node in return try ASN1OctetString(derEncoded: node) } - let sSelector: ASN1OctetString? = try DER.optionalExplicitlyTagged(&nodes, tagNumber: 1, tagClass: .contextSpecific) { node in return try ASN1OctetString(derEncoded: node) } - let tSelector: ASN1OctetString? = try DER.optionalExplicitlyTagged(&nodes, tagNumber: 2, tagClass: .contextSpecific) { node in return try ASN1OctetString(derEncoded: node) } - let nAddresses: [ASN1OctetString] = try DER.explicitlyTagged(&nodes, tagNumber: 3, tagClass: .contextSpecific) { node in try DER.set(of: ASN1OctetString.self, identifier: .set, rootNode: node) } - return PresentationAddress(pSelector: pSelector, sSelector: sSelector, tSelector: tSelector, nAddresses: nAddresses) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - if let pSelector = self.pSelector { try coder.serialize(explicitlyTaggedWithTagNumber: 0, tagClass: .contextSpecific) { codec in try codec.serialize(pSelector) } } - if let sSelector = self.sSelector { try coder.serialize(explicitlyTaggedWithTagNumber: 1, tagClass: .contextSpecific) { codec in try codec.serialize(sSelector) } } - if let tSelector = self.tSelector { try coder.serialize(explicitlyTaggedWithTagNumber: 2, tagClass: .contextSpecific) { codec in try codec.serialize(tSelector) } } - try coder.serialize(explicitlyTaggedWithTagNumber: 3, tagClass: .contextSpecific) { codec in try codec.serializeSetOf(nAddresses) } - } - } -} diff --git a/Sources/ASN1SCG/PrivateDomainName.swift b/Sources/ASN1SCG/PrivateDomainName.swift deleted file mode 100644 index 1a319a5..0000000 --- a/Sources/ASN1SCG/PrivateDomainName.swift +++ /dev/null @@ -1,25 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum PrivateDomainName: DERParseable, DERSerializable, Hashable, Sendable { - case numeric(ASN1PrintableString) - case printable(ASN1PrintableString) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1PrintableString.defaultIdentifier: - self = .numeric(try ASN1PrintableString(derEncoded: rootNode)) - case ASN1PrintableString.defaultIdentifier: - self = .printable(try ASN1PrintableString(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .numeric(let numeric): try coder.serialize(numeric) - case .printable(let printable): try coder.serialize(printable) - } - } - -} diff --git a/Sources/ASN1SCG/PrivateKeyUsagePeriod.swift b/Sources/ASN1SCG/PrivateKeyUsagePeriod.swift deleted file mode 100644 index 6e346c6..0000000 --- a/Sources/ASN1SCG/PrivateKeyUsagePeriod.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct PrivateKeyUsagePeriod: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var notBefore: GeneralizedTime? - @usableFromInline var notAfter: GeneralizedTime? - @inlinable init(notBefore: GeneralizedTime?, notAfter: GeneralizedTime?) { - self.notBefore = notBefore - self.notAfter = notAfter - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let notBefore: GeneralizedTime? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) - let notAfter: GeneralizedTime? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) - return PrivateKeyUsagePeriod(notBefore: notBefore, notAfter: notAfter) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - if let notBefore = self.notBefore { try coder.serializeOptionalImplicitlyTagged(notBefore, withIdentifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) } - if let notAfter = self.notAfter { try coder.serializeOptionalImplicitlyTagged(notAfter, withIdentifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/Profile.swift b/Sources/ASN1SCG/Profile.swift deleted file mode 100644 index 9ef858e..0000000 --- a/Sources/ASN1SCG/Profile.swift +++ /dev/null @@ -1,65 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Profile: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var nickname: ASN1OctetString - @usableFromInline var phone: ASN1OctetString - @usableFromInline var session: ASN1OctetString - @usableFromInline var chats: [Contact] - @usableFromInline var contacts: [Contact] - @usableFromInline var keys: [ASN1OctetString] - @usableFromInline var servers: [Server] - @usableFromInline var settings: [Feature] - @usableFromInline var update: ArraySlice - @usableFromInline var status: ArraySlice - @usableFromInline var roster: Roster - @inlinable init(nickname: ASN1OctetString, phone: ASN1OctetString, session: ASN1OctetString, chats: [Contact], contacts: [Contact], keys: [ASN1OctetString], servers: [Server], settings: [Feature], update: ArraySlice, status: ArraySlice, roster: Roster) { - self.nickname = nickname - self.phone = phone - self.session = session - self.chats = chats - self.contacts = contacts - self.keys = keys - self.servers = servers - self.settings = settings - self.update = update - self.status = status - self.roster = roster - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let nickname: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let phone: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let session: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let chats: [Contact] = try DER.sequence(of: Contact.self, identifier: .sequence, nodes: &nodes) - let contacts: [Contact] = try DER.sequence(of: Contact.self, identifier: .sequence, nodes: &nodes) - let keys: [ASN1OctetString] = try DER.sequence(of: ASN1OctetString.self, identifier: .sequence, nodes: &nodes) - let servers: [Server] = try DER.sequence(of: Server.self, identifier: .sequence, nodes: &nodes) - let settings: [Feature] = try DER.sequence(of: Feature.self, identifier: .sequence, nodes: &nodes) - let update: ArraySlice = try ArraySlice(derEncoded: &nodes) - let status: ArraySlice = try ArraySlice(derEncoded: &nodes) - let roster: Roster = try Roster(derEncoded: &nodes) - return Profile(nickname: nickname, phone: phone, session: session, chats: chats, contacts: contacts, keys: keys, servers: servers, settings: settings, update: update, status: status, roster: roster) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(nickname) - try coder.serialize(phone) - try coder.serialize(session) - try coder.serializeSequenceOf(chats) - try coder.serializeSequenceOf(contacts) - try coder.serializeSequenceOf(keys) - try coder.serializeSequenceOf(servers) - try coder.serializeSequenceOf(settings) - try coder.serialize(update) - try coder.serialize(status) - try coder.serialize(roster) - } - } -} diff --git a/Sources/ASN1SCG/RC2CBCParameter.swift b/Sources/ASN1SCG/RC2CBCParameter.swift deleted file mode 100644 index a401a71..0000000 --- a/Sources/ASN1SCG/RC2CBCParameter.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct RC2CBCParameter: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var rc2ParameterVersion: ArraySlice - @usableFromInline var iv: ASN1OctetString - @inlinable init(rc2ParameterVersion: ArraySlice, iv: ASN1OctetString) { - self.rc2ParameterVersion = rc2ParameterVersion - self.iv = iv - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let rc2ParameterVersion: ArraySlice = try ArraySlice(derEncoded: &nodes) - let iv: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - return RC2CBCParameter(rc2ParameterVersion: rc2ParameterVersion, iv: iv) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(rc2ParameterVersion) - try coder.serialize(iv) - } - } -} diff --git a/Sources/ASN1SCG/Real.swift b/Sources/ASN1SCG/Real.swift deleted file mode 100644 index db62ee2..0000000 --- a/Sources/ASN1SCG/Real.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Real: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var mantissa: ArraySlice - @usableFromInline var base: ArraySlice - @usableFromInline var exponent: ArraySlice - @inlinable init(mantissa: ArraySlice, base: ArraySlice, exponent: ArraySlice) { - self.mantissa = mantissa - self.base = base - self.exponent = exponent - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let mantissa: ArraySlice = try ArraySlice(derEncoded: &nodes) - let base: ArraySlice = try ArraySlice(derEncoded: &nodes) - let exponent: ArraySlice = try ArraySlice(derEncoded: &nodes) - return Real(mantissa: mantissa, base: base, exponent: exponent) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(mantissa) - try coder.serialize(base) - try coder.serialize(exponent) - } - } -} diff --git a/Sources/ASN1SCG/RecipientIdentifier.swift b/Sources/ASN1SCG/RecipientIdentifier.swift deleted file mode 100644 index 45d3066..0000000 --- a/Sources/ASN1SCG/RecipientIdentifier.swift +++ /dev/null @@ -1,30 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum RecipientIdentifier: DERParseable, DERSerializable, Hashable, Sendable { - case issuerAndSerialNumber(IssuerAndSerialNumber) - case subjectKeyIdentifier(ASN1OctetString) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case IssuerAndSerialNumber.defaultIdentifier: - self = .issuerAndSerialNumber(try IssuerAndSerialNumber(derEncoded: rootNode)) - - case ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific): - self = .subjectKeyIdentifier(try ASN1OctetString(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .issuerAndSerialNumber(let issuerAndSerialNumber): try coder.serialize(issuerAndSerialNumber) - - case .subjectKeyIdentifier(let subjectKeyIdentifier): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), - { coder in try coder.serialize(subjectKeyIdentifier) }) - } - } - -} diff --git a/Sources/ASN1SCG/RecipientKeyIdentifier.swift b/Sources/ASN1SCG/RecipientKeyIdentifier.swift deleted file mode 100644 index 1829b2a..0000000 --- a/Sources/ASN1SCG/RecipientKeyIdentifier.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct RecipientKeyIdentifier: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var subjectKeyIdentifier: ASN1OctetString - @usableFromInline var date: GeneralizedTime? - @usableFromInline var other: OtherKeyAttribute? - @inlinable init(subjectKeyIdentifier: ASN1OctetString, date: GeneralizedTime?, other: OtherKeyAttribute?) { - self.subjectKeyIdentifier = subjectKeyIdentifier - self.date = date - self.other = other - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let subjectKeyIdentifier: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let date: GeneralizedTime? = try GeneralizedTime(derEncoded: &nodes) - let other: OtherKeyAttribute? = try OtherKeyAttribute(derEncoded: &nodes) - return RecipientKeyIdentifier(subjectKeyIdentifier: subjectKeyIdentifier, date: date, other: other) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(subjectKeyIdentifier) - if let date = self.date { try coder.serialize(date) } - if let other = self.other { try coder.serialize(other) } - } - } -} diff --git a/Sources/ASN1SCG/Register.swift b/Sources/ASN1SCG/Register.swift deleted file mode 100644 index 457d0a1..0000000 --- a/Sources/ASN1SCG/Register.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Register: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var nickname: ASN1OctetString - @usableFromInline var csr: ASN1OctetString - @usableFromInline var password: ASN1OctetString - @inlinable init(nickname: ASN1OctetString, csr: ASN1OctetString, password: ASN1OctetString) { - self.nickname = nickname - self.csr = csr - self.password = password - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let nickname: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let csr: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let password: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - return Register(nickname: nickname, csr: csr, password: password) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(nickname) - try coder.serialize(csr) - try coder.serialize(password) - } - } -} diff --git a/Sources/ASN1SCG/Room.swift b/Sources/ASN1SCG/Room.swift deleted file mode 100644 index 79418c3..0000000 --- a/Sources/ASN1SCG/Room.swift +++ /dev/null @@ -1,89 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Room: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var id: ASN1OctetString - @usableFromInline var name: ASN1OctetString - @usableFromInline var links: [ASN1OctetString] - @usableFromInline var description: ASN1OctetString - @usableFromInline var settings: [Feature] - @usableFromInline var members: [Member] - @usableFromInline var admins: [Member] - @usableFromInline var data: [FileDesc] - @usableFromInline var type: RoomType - @usableFromInline var tos: ASN1OctetString - @usableFromInline var tos_update: ArraySlice - @usableFromInline var unread: ArraySlice - @usableFromInline var mentions: [ArraySlice] - @usableFromInline var last_msg: Message - @usableFromInline var update: ArraySlice - @usableFromInline var created: ArraySlice - @usableFromInline var status: RoomStatus - @inlinable init(id: ASN1OctetString, name: ASN1OctetString, links: [ASN1OctetString], description: ASN1OctetString, settings: [Feature], members: [Member], admins: [Member], data: [FileDesc], type: RoomType, tos: ASN1OctetString, tos_update: ArraySlice, unread: ArraySlice, mentions: [ArraySlice], last_msg: Message, update: ArraySlice, created: ArraySlice, status: RoomStatus) { - self.id = id - self.name = name - self.links = links - self.description = description - self.settings = settings - self.members = members - self.admins = admins - self.data = data - self.type = type - self.tos = tos - self.tos_update = tos_update - self.unread = unread - self.mentions = mentions - self.last_msg = last_msg - self.update = update - self.created = created - self.status = status - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let id: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let name: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let links: [ASN1OctetString] = try DER.sequence(of: ASN1OctetString.self, identifier: .sequence, nodes: &nodes) - let description: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let settings: [Feature] = try DER.sequence(of: Feature.self, identifier: .sequence, nodes: &nodes) - let members: [Member] = try DER.sequence(of: Member.self, identifier: .sequence, nodes: &nodes) - let admins: [Member] = try DER.sequence(of: Member.self, identifier: .sequence, nodes: &nodes) - let data: [FileDesc] = try DER.sequence(of: FileDesc.self, identifier: .sequence, nodes: &nodes) - let type: RoomType = try RoomType(derEncoded: &nodes) - let tos: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let tos_update: ArraySlice = try ArraySlice(derEncoded: &nodes) - let unread: ArraySlice = try ArraySlice(derEncoded: &nodes) - let mentions: [ArraySlice] = try DER.sequence(of: ArraySlice.self, identifier: .sequence, nodes: &nodes) - let last_msg: Message = try Message(derEncoded: &nodes) - let update: ArraySlice = try ArraySlice(derEncoded: &nodes) - let created: ArraySlice = try ArraySlice(derEncoded: &nodes) - let status: RoomStatus = try RoomStatus(derEncoded: &nodes) - return Room(id: id, name: name, links: links, description: description, settings: settings, members: members, admins: admins, data: data, type: type, tos: tos, tos_update: tos_update, unread: unread, mentions: mentions, last_msg: last_msg, update: update, created: created, status: status) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(id) - try coder.serialize(name) - try coder.serializeSequenceOf(links) - try coder.serialize(description) - try coder.serializeSequenceOf(settings) - try coder.serializeSequenceOf(members) - try coder.serializeSequenceOf(admins) - try coder.serializeSequenceOf(data) - try coder.serialize(type) - try coder.serialize(tos) - try coder.serialize(tos_update) - try coder.serialize(unread) - try coder.serializeSequenceOf(mentions) - try coder.serialize(last_msg) - try coder.serialize(update) - try coder.serialize(created) - try coder.serialize(status) - } - } -} diff --git a/Sources/ASN1SCG/RoomStatus.swift b/Sources/ASN1SCG/RoomStatus.swift deleted file mode 100644 index f42a73f..0000000 --- a/Sources/ASN1SCG/RoomStatus.swift +++ /dev/null @@ -1,30 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct RoomStatus: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let create = RoomStatus(rawValue: 1) - static let leave = RoomStatus(rawValue: 2) - static let add = RoomStatus(rawValue: 3) - static let remove = RoomStatus(rawValue: 4) - static let removed = RoomStatus(rawValue: 5) - static let join = RoomStatus(rawValue: 6) - static let joined = RoomStatus(rawValue: 7) - static let info = RoomStatus(rawValue: 8) - static let patch = RoomStatus(rawValue: 9) - static let get = RoomStatus(rawValue: 10) - static let delete = RoomStatus(rawValue: 11) - static let last_msg = RoomStatus(rawValue: 12) - static let mute = RoomStatus(rawValue: 13) - static let unmute = RoomStatus(rawValue: 14) -} diff --git a/Sources/ASN1SCG/RoomType.swift b/Sources/ASN1SCG/RoomType.swift deleted file mode 100644 index bd0efcd..0000000 --- a/Sources/ASN1SCG/RoomType.swift +++ /dev/null @@ -1,19 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct RoomType: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let group = RoomType(rawValue: 1) - static let channel = RoomType(rawValue: 2) - static let call = RoomType(rawValue: 3) -} diff --git a/Sources/ASN1SCG/Roster.swift b/Sources/ASN1SCG/Roster.swift deleted file mode 100644 index 700ba28..0000000 --- a/Sources/ASN1SCG/Roster.swift +++ /dev/null @@ -1,45 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Roster: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var id: ASN1OctetString - @usableFromInline var nickname: ASN1OctetString - @usableFromInline var update: ArraySlice - @usableFromInline var contacts: [Contact] - @usableFromInline var topics: [Room] - @usableFromInline var status: RosterStatus - @inlinable init(id: ASN1OctetString, nickname: ASN1OctetString, update: ArraySlice, contacts: [Contact], topics: [Room], status: RosterStatus) { - self.id = id - self.nickname = nickname - self.update = update - self.contacts = contacts - self.topics = topics - self.status = status - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let id: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let nickname: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let update: ArraySlice = try ArraySlice(derEncoded: &nodes) - let contacts: [Contact] = try DER.sequence(of: Contact.self, identifier: .sequence, nodes: &nodes) - let topics: [Room] = try DER.sequence(of: Room.self, identifier: .sequence, nodes: &nodes) - let status: RosterStatus = try RosterStatus(derEncoded: &nodes) - return Roster(id: id, nickname: nickname, update: update, contacts: contacts, topics: topics, status: status) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(id) - try coder.serialize(nickname) - try coder.serialize(update) - try coder.serializeSequenceOf(contacts) - try coder.serializeSequenceOf(topics) - try coder.serialize(status) - } - } -} diff --git a/Sources/ASN1SCG/RosterStatus.swift b/Sources/ASN1SCG/RosterStatus.swift deleted file mode 100644 index b190eb0..0000000 --- a/Sources/ASN1SCG/RosterStatus.swift +++ /dev/null @@ -1,28 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct RosterStatus: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let get = RosterStatus(rawValue: 1) - static let create = RosterStatus(rawValue: 2) - static let del = RosterStatus(rawValue: 3) - static let remove = RosterStatus(rawValue: 4) - static let nick = RosterStatus(rawValue: 5) - static let search = RosterStatus(rawValue: 6) - static let contact = RosterStatus(rawValue: 7) - static let add = RosterStatus(rawValue: 8) - static let update = RosterStatus(rawValue: 9) - static let list = RosterStatus(rawValue: 10) - static let patch = RosterStatus(rawValue: 11) - static let last_msg = RosterStatus(rawValue: 12) -} diff --git a/Sources/ASN1SCG/SaslCredentials.swift b/Sources/ASN1SCG/SaslCredentials.swift deleted file mode 100644 index 2ced903..0000000 --- a/Sources/ASN1SCG/SaslCredentials.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct SaslCredentials: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var mechanism: ASN1OctetString - @usableFromInline var credentials: ASN1OctetString? - @inlinable init(mechanism: ASN1OctetString, credentials: ASN1OctetString?) { - self.mechanism = mechanism - self.credentials = credentials - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let mechanism: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let credentials: ASN1OctetString? = try ASN1OctetString(derEncoded: &nodes) - return SaslCredentials(mechanism: mechanism, credentials: credentials) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(mechanism) - if let credentials = self.credentials { try coder.serialize(credentials) } - } - } -} diff --git a/Sources/ASN1SCG/Scope.swift b/Sources/ASN1SCG/Scope.swift deleted file mode 100644 index 37da311..0000000 --- a/Sources/ASN1SCG/Scope.swift +++ /dev/null @@ -1,23 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct Scope: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let profile = Scope(rawValue: 0) - static let folder = Scope(rawValue: 1) - static let contact = Scope(rawValue: 2) - static let member = Scope(rawValue: 3) - static let room = Scope(rawValue: 4) - static let chat = Scope(rawValue: 5) - static let message = Scope(rawValue: 6) -} diff --git a/Sources/ASN1SCG/Search.swift b/Sources/ASN1SCG/Search.swift deleted file mode 100644 index 9b98366..0000000 --- a/Sources/ASN1SCG/Search.swift +++ /dev/null @@ -1,49 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Search: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var dn: ASN1OctetString - @usableFromInline var id: ASN1OctetString - @usableFromInline var field: ASN1OctetString - @usableFromInline var value: ASN1OctetString - @usableFromInline var criteria: Criteria - @usableFromInline var type: Scope - @usableFromInline var status: SearchStatus - @inlinable init(dn: ASN1OctetString, id: ASN1OctetString, field: ASN1OctetString, value: ASN1OctetString, criteria: Criteria, type: Scope, status: SearchStatus) { - self.dn = dn - self.id = id - self.field = field - self.value = value - self.criteria = criteria - self.type = type - self.status = status - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let dn: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let id: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let field: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let value: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let criteria: Criteria = try Criteria(derEncoded: &nodes) - let type: Scope = try Scope(derEncoded: &nodes) - let status: SearchStatus = try SearchStatus(derEncoded: &nodes) - return Search(dn: dn, id: id, field: field, value: value, criteria: criteria, type: type, status: status) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(dn) - try coder.serialize(id) - try coder.serialize(field) - try coder.serialize(value) - try coder.serialize(criteria) - try coder.serialize(type) - try coder.serialize(status) - } - } -} diff --git a/Sources/ASN1SCG/SearchRequest.swift b/Sources/ASN1SCG/SearchRequest.swift deleted file mode 100644 index f9616d0..0000000 --- a/Sources/ASN1SCG/SearchRequest.swift +++ /dev/null @@ -1,53 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct SearchRequest: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var baseObject: ASN1OctetString - @usableFromInline var scope: SearchRequest_scope_Enum - @usableFromInline var derefAliases: SearchRequest_derefAliases_Enum - @usableFromInline var sizeLimit: ArraySlice - @usableFromInline var timeLimit: ArraySlice - @usableFromInline var typesOnly: Bool - @usableFromInline var filter: Filter - @usableFromInline var attributes: [ASN1OctetString] - @inlinable init(baseObject: ASN1OctetString, scope: SearchRequest_scope_Enum, derefAliases: SearchRequest_derefAliases_Enum, sizeLimit: ArraySlice, timeLimit: ArraySlice, typesOnly: Bool, filter: Filter, attributes: [ASN1OctetString]) { - self.baseObject = baseObject - self.scope = scope - self.derefAliases = derefAliases - self.sizeLimit = sizeLimit - self.timeLimit = timeLimit - self.typesOnly = typesOnly - self.filter = filter - self.attributes = attributes - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let baseObject: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let scope: SearchRequest_scope_Enum = try SearchRequest_scope_Enum(derEncoded: &nodes) - let derefAliases: SearchRequest_derefAliases_Enum = try SearchRequest_derefAliases_Enum(derEncoded: &nodes) - let sizeLimit: ArraySlice = try ArraySlice(derEncoded: &nodes) - let timeLimit: ArraySlice = try ArraySlice(derEncoded: &nodes) - let typesOnly: Bool = try Bool(derEncoded: &nodes) - let filter: Filter = try Filter(derEncoded: &nodes) - let attributes: [ASN1OctetString] = try DER.sequence(of: ASN1OctetString.self, identifier: .sequence, nodes: &nodes) - return SearchRequest(baseObject: baseObject, scope: scope, derefAliases: derefAliases, sizeLimit: sizeLimit, timeLimit: timeLimit, typesOnly: typesOnly, filter: filter, attributes: attributes) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(baseObject) - try coder.serialize(scope) - try coder.serialize(derefAliases) - try coder.serialize(sizeLimit) - try coder.serialize(timeLimit) - try coder.serialize(typesOnly) - try coder.serialize(filter) - try coder.serializeSequenceOf(attributes) - } - } -} diff --git a/Sources/ASN1SCG/SearchRequest_derefAliases_Enum.swift b/Sources/ASN1SCG/SearchRequest_derefAliases_Enum.swift deleted file mode 100644 index 624429c..0000000 --- a/Sources/ASN1SCG/SearchRequest_derefAliases_Enum.swift +++ /dev/null @@ -1,20 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct SearchRequest_derefAliases_Enum: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let neverDerefAliases = SearchRequest_derefAliases_Enum(rawValue: 0) - static let derefInSearching = SearchRequest_derefAliases_Enum(rawValue: 1) - static let derefFindingBaseObj = SearchRequest_derefAliases_Enum(rawValue: 2) - static let derefAlways = SearchRequest_derefAliases_Enum(rawValue: 3) -} diff --git a/Sources/ASN1SCG/SearchRequest_scope_Enum.swift b/Sources/ASN1SCG/SearchRequest_scope_Enum.swift deleted file mode 100644 index abdc5cb..0000000 --- a/Sources/ASN1SCG/SearchRequest_scope_Enum.swift +++ /dev/null @@ -1,19 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct SearchRequest_scope_Enum: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let baseObject = SearchRequest_scope_Enum(rawValue: 0) - static let singleLevel = SearchRequest_scope_Enum(rawValue: 1) - static let wholeSubtree = SearchRequest_scope_Enum(rawValue: 2) -} diff --git a/Sources/ASN1SCG/SearchResultEntry.swift b/Sources/ASN1SCG/SearchResultEntry.swift deleted file mode 100644 index b091471..0000000 --- a/Sources/ASN1SCG/SearchResultEntry.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct SearchResultEntry: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var objectName: ASN1OctetString - @usableFromInline var attributes: [PartialAttribute] - @inlinable init(objectName: ASN1OctetString, attributes: [PartialAttribute]) { - self.objectName = objectName - self.attributes = attributes - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let objectName: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let attributes: [PartialAttribute] = try DER.sequence(of: PartialAttribute.self, identifier: .sequence, nodes: &nodes) - return SearchResultEntry(objectName: objectName, attributes: attributes) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(objectName) - try coder.serializeSequenceOf(attributes) - } - } -} diff --git a/Sources/ASN1SCG/SearchStatus.swift b/Sources/ASN1SCG/SearchStatus.swift deleted file mode 100644 index b13b570..0000000 --- a/Sources/ASN1SCG/SearchStatus.swift +++ /dev/null @@ -1,17 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct SearchStatus: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let ok = SearchStatus(rawValue: 0) -} diff --git a/Sources/ASN1SCG/Server.swift b/Sources/ASN1SCG/Server.swift deleted file mode 100644 index 1cae436..0000000 --- a/Sources/ASN1SCG/Server.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Server: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var service: ASN1OctetString - @usableFromInline var port: ArraySlice - @usableFromInline var host: ASN1OctetString - @inlinable init(service: ASN1OctetString, port: ArraySlice, host: ASN1OctetString) { - self.service = service - self.port = port - self.host = host - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let service: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let port: ArraySlice = try ArraySlice(derEncoded: &nodes) - let host: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - return Server(service: service, port: port, host: host) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(service) - try coder.serialize(port) - try coder.serialize(host) - } - } -} diff --git a/Sources/ASN1SCG/Service.swift b/Sources/ASN1SCG/Service.swift deleted file mode 100644 index 6f94fd8..0000000 --- a/Sources/ASN1SCG/Service.swift +++ /dev/null @@ -1,49 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Service: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var id: ASN1OctetString - @usableFromInline var type: ServiceType - @usableFromInline var data: ASN1OctetString - @usableFromInline var login: ASN1OctetString - @usableFromInline var password: ASN1OctetString - @usableFromInline var expiration: ArraySlice - @usableFromInline var status: ServiceStatus - @inlinable init(id: ASN1OctetString, type: ServiceType, data: ASN1OctetString, login: ASN1OctetString, password: ASN1OctetString, expiration: ArraySlice, status: ServiceStatus) { - self.id = id - self.type = type - self.data = data - self.login = login - self.password = password - self.expiration = expiration - self.status = status - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let id: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let type: ServiceType = try ServiceType(derEncoded: &nodes) - let data: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let login: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let password: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let expiration: ArraySlice = try ArraySlice(derEncoded: &nodes) - let status: ServiceStatus = try ServiceStatus(derEncoded: &nodes) - return Service(id: id, type: type, data: data, login: login, password: password, expiration: expiration, status: status) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(id) - try coder.serialize(type) - try coder.serialize(data) - try coder.serialize(login) - try coder.serialize(password) - try coder.serialize(expiration) - try coder.serialize(status) - } - } -} diff --git a/Sources/ASN1SCG/ServiceStatus.swift b/Sources/ASN1SCG/ServiceStatus.swift deleted file mode 100644 index 13e3ed9..0000000 --- a/Sources/ASN1SCG/ServiceStatus.swift +++ /dev/null @@ -1,20 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct ServiceStatus: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let verified = ServiceStatus(rawValue: 0) - static let added = ServiceStatus(rawValue: 1) - static let add = ServiceStatus(rawValue: 2) - static let remove = ServiceStatus(rawValue: 3) -} diff --git a/Sources/ASN1SCG/ServiceType.swift b/Sources/ASN1SCG/ServiceType.swift deleted file mode 100644 index c9269b4..0000000 --- a/Sources/ASN1SCG/ServiceType.swift +++ /dev/null @@ -1,20 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -public struct ServiceType: DERImplicitlyTaggable, Hashable, Sendable, RawRepresentable { - public static var defaultIdentifier: ASN1Identifier { .enumerated } - public var rawValue: Int - public init(rawValue: Int) { self.rawValue = rawValue } - public init(derEncoded rootNode: ASN1Node, withIdentifier identifier: ASN1Identifier) throws { - self.rawValue = try .init(derEncoded: rootNode, withIdentifier: identifier) - } - public func serialize(into coder: inout DER.Serializer, withIdentifier identifier: ASN1Identifier) throws { - try self.rawValue.serialize(into: &coder, withIdentifier: identifier) - } - static let synrc = ServiceType(rawValue: 0) - static let aws = ServiceType(rawValue: 1) - static let gcp = ServiceType(rawValue: 2) - static let azure = ServiceType(rawValue: 3) -} diff --git a/Sources/ASN1SCG/SignerIdentifier.swift b/Sources/ASN1SCG/SignerIdentifier.swift deleted file mode 100644 index c93c598..0000000 --- a/Sources/ASN1SCG/SignerIdentifier.swift +++ /dev/null @@ -1,30 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum SignerIdentifier: DERParseable, DERSerializable, Hashable, Sendable { - case issuerAndSerialNumber(IssuerAndSerialNumber) - case subjectKeyIdentifier(ASN1OctetString) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case IssuerAndSerialNumber.defaultIdentifier: - self = .issuerAndSerialNumber(try IssuerAndSerialNumber(derEncoded: rootNode)) - - case ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific): - self = .subjectKeyIdentifier(try ASN1OctetString(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .issuerAndSerialNumber(let issuerAndSerialNumber): try coder.serialize(issuerAndSerialNumber) - - case .subjectKeyIdentifier(let subjectKeyIdentifier): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), - { coder in try coder.serialize(subjectKeyIdentifier) }) - } - } - -} diff --git a/Sources/ASN1SCG/SubjectPublicKeyInfo.swift b/Sources/ASN1SCG/SubjectPublicKeyInfo.swift deleted file mode 100644 index 98084b8..0000000 --- a/Sources/ASN1SCG/SubjectPublicKeyInfo.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct SubjectPublicKeyInfo: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var algorithm: AlgorithmIdentifier - @usableFromInline var subjectPublicKey: ASN1BitString - @inlinable init(algorithm: AlgorithmIdentifier, subjectPublicKey: ASN1BitString) { - self.algorithm = algorithm - self.subjectPublicKey = subjectPublicKey - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let algorithm: AlgorithmIdentifier = try AlgorithmIdentifier(derEncoded: &nodes) - let subjectPublicKey: ASN1BitString = try ASN1BitString(derEncoded: &nodes) - return SubjectPublicKeyInfo(algorithm: algorithm, subjectPublicKey: subjectPublicKey) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(algorithm) - try coder.serialize(subjectPublicKey) - } - } -} diff --git a/Sources/ASN1SCG/SubstringFilter.swift b/Sources/ASN1SCG/SubstringFilter.swift deleted file mode 100644 index ea9d2e3..0000000 --- a/Sources/ASN1SCG/SubstringFilter.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct SubstringFilter: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var type: ASN1OctetString - @usableFromInline var substrings: [SubstringFilter_substrings_Choice] - @inlinable init(type: ASN1OctetString, substrings: [SubstringFilter_substrings_Choice]) { - self.type = type - self.substrings = substrings - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let type: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let substrings: [SubstringFilter_substrings_Choice] = try DER.sequence(of: SubstringFilter_substrings_Choice.self, identifier: .sequence, nodes: &nodes) - return SubstringFilter(type: type, substrings: substrings) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(type) - try coder.serializeSequenceOf(substrings) - } - } -} diff --git a/Sources/ASN1SCG/SubstringFilter_substrings_Choice.swift b/Sources/ASN1SCG/SubstringFilter_substrings_Choice.swift deleted file mode 100644 index e39d947..0000000 --- a/Sources/ASN1SCG/SubstringFilter_substrings_Choice.swift +++ /dev/null @@ -1,38 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum SubstringFilter_substrings_Choice: DERParseable, DERSerializable, Hashable, Sendable { - case initial(ASN1OctetString) - case any(ASN1OctetString) - case final(ASN1OctetString) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific): - self = .initial(try ASN1OctetString(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific): - self = .any(try ASN1OctetString(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific): - self = .final(try ASN1OctetString(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .initial(let initial): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), - { coder in try coder.serialize(initial) }) - case .any(let any): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific), - { coder in try coder.serialize(any) }) - case .final(let final): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific), - { coder in try coder.serialize(final) }) - } - } - -} diff --git a/Sources/ASN1SCG/SvceAuthInfo.swift b/Sources/ASN1SCG/SvceAuthInfo.swift deleted file mode 100644 index 0143d40..0000000 --- a/Sources/ASN1SCG/SvceAuthInfo.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct SvceAuthInfo: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var service: GeneralName - @usableFromInline var ident: GeneralName - @usableFromInline var authInfo: ASN1OctetString? - @inlinable init(service: GeneralName, ident: GeneralName, authInfo: ASN1OctetString?) { - self.service = service - self.ident = ident - self.authInfo = authInfo - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let service: GeneralName = try GeneralName(derEncoded: &nodes) - let ident: GeneralName = try GeneralName(derEncoded: &nodes) - let authInfo: ASN1OctetString? = try ASN1OctetString(derEncoded: &nodes) - return SvceAuthInfo(service: service, ident: ident, authInfo: authInfo) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(service) - try coder.serialize(ident) - if let authInfo = self.authInfo { try coder.serialize(authInfo) } - } - } -} diff --git a/Sources/ASN1SCG/TBSCertList.swift b/Sources/ASN1SCG/TBSCertList.swift deleted file mode 100644 index d2b6d74..0000000 --- a/Sources/ASN1SCG/TBSCertList.swift +++ /dev/null @@ -1,49 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct TBSCertList: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var version: Int? - @usableFromInline var signature: AlgorithmIdentifier - @usableFromInline var issuer: Name - @usableFromInline var thisUpdate: Time - @usableFromInline var nextUpdate: Time? - @usableFromInline var revokedCertificates: [TBSCertList_revokedCertificates_Sequence]? - @usableFromInline var crlExtensions: [Extension]? - @inlinable init(version: Int?, signature: AlgorithmIdentifier, issuer: Name, thisUpdate: Time, nextUpdate: Time?, revokedCertificates: [TBSCertList_revokedCertificates_Sequence]?, crlExtensions: [Extension]?) { - self.version = version - self.signature = signature - self.issuer = issuer - self.thisUpdate = thisUpdate - self.nextUpdate = nextUpdate - self.revokedCertificates = revokedCertificates - self.crlExtensions = crlExtensions - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let version: Int? = try Int(derEncoded: &nodes) - let signature: AlgorithmIdentifier = try AlgorithmIdentifier(derEncoded: &nodes) - let issuer: Name = try Name(derEncoded: &nodes) - let thisUpdate: Time = try Time(derEncoded: &nodes) - let nextUpdate: Time? = try Time(derEncoded: &nodes) - let revokedCertificates: [TBSCertList_revokedCertificates_Sequence]? = try DER.sequence(of: TBSCertList_revokedCertificates_Sequence.self, identifier: .sequence, nodes: &nodes) - let crlExtensions: [Extension]? = try DER.optionalExplicitlyTagged(&nodes, tagNumber: 0, tagClass: .contextSpecific) { node in try DER.sequence(of: Extension.self, identifier: .sequence, rootNode: node) } - return TBSCertList(version: version, signature: signature, issuer: issuer, thisUpdate: thisUpdate, nextUpdate: nextUpdate, revokedCertificates: revokedCertificates, crlExtensions: crlExtensions) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - if let version = self.version { try coder.serialize(version) } - try coder.serialize(signature) - try coder.serialize(issuer) - try coder.serialize(thisUpdate) - if let nextUpdate = self.nextUpdate { try coder.serialize(nextUpdate) } - if let revokedCertificates = self.revokedCertificates { try coder.serializeSequenceOf(revokedCertificates) } - if let crlExtensions = self.crlExtensions { try coder.serialize(explicitlyTaggedWithTagNumber: 0, tagClass: .contextSpecific) { codec in try codec.serializeSequenceOf(crlExtensions) } } - } - } -} diff --git a/Sources/ASN1SCG/TBSCertList_revokedCertificates_Sequence.swift b/Sources/ASN1SCG/TBSCertList_revokedCertificates_Sequence.swift deleted file mode 100644 index 00ccc67..0000000 --- a/Sources/ASN1SCG/TBSCertList_revokedCertificates_Sequence.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct TBSCertList_revokedCertificates_Sequence: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var userCertificate: ArraySlice - @usableFromInline var revocationDate: Time - @usableFromInline var crlEntryExtensions: [Extension]? - @inlinable init(userCertificate: ArraySlice, revocationDate: Time, crlEntryExtensions: [Extension]?) { - self.userCertificate = userCertificate - self.revocationDate = revocationDate - self.crlEntryExtensions = crlEntryExtensions - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let userCertificate: ArraySlice = try ArraySlice(derEncoded: &nodes) - let revocationDate: Time = try Time(derEncoded: &nodes) - let crlEntryExtensions: [Extension]? = try DER.sequence(of: Extension.self, identifier: .sequence, nodes: &nodes) - return TBSCertList_revokedCertificates_Sequence(userCertificate: userCertificate, revocationDate: revocationDate, crlEntryExtensions: crlEntryExtensions) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(userCertificate) - try coder.serialize(revocationDate) - if let crlEntryExtensions = self.crlEntryExtensions { try coder.serializeSequenceOf(crlEntryExtensions) } - } - } -} diff --git a/Sources/ASN1SCG/TBSCertificate.swift b/Sources/ASN1SCG/TBSCertificate.swift deleted file mode 100644 index c7fc1d9..0000000 --- a/Sources/ASN1SCG/TBSCertificate.swift +++ /dev/null @@ -1,61 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct TBSCertificate: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var version: Int - @usableFromInline var serialNumber: ArraySlice - @usableFromInline var signature: AlgorithmIdentifier - @usableFromInline var issuer: Name - @usableFromInline var validity: Validity - @usableFromInline var subject: Name - @usableFromInline var subjectPublicKeyInfo: SubjectPublicKeyInfo - @usableFromInline var issuerUniqueID: ASN1BitString? - @usableFromInline var subjectUniqueID: ASN1BitString? - @usableFromInline var extensions: [Extension]? - @inlinable init(version: Int, serialNumber: ArraySlice, signature: AlgorithmIdentifier, issuer: Name, validity: Validity, subject: Name, subjectPublicKeyInfo: SubjectPublicKeyInfo, issuerUniqueID: ASN1BitString?, subjectUniqueID: ASN1BitString?, extensions: [Extension]?) { - self.version = version - self.serialNumber = serialNumber - self.signature = signature - self.issuer = issuer - self.validity = validity - self.subject = subject - self.subjectPublicKeyInfo = subjectPublicKeyInfo - self.issuerUniqueID = issuerUniqueID - self.subjectUniqueID = subjectUniqueID - self.extensions = extensions - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let version: Int = try DER.explicitlyTagged(&nodes, tagNumber: 0, tagClass: .contextSpecific) { node in return try Int(derEncoded: node) } - let serialNumber: ArraySlice = try ArraySlice(derEncoded: &nodes) - let signature: AlgorithmIdentifier = try AlgorithmIdentifier(derEncoded: &nodes) - let issuer: Name = try Name(derEncoded: &nodes) - let validity: Validity = try Validity(derEncoded: &nodes) - let subject: Name = try Name(derEncoded: &nodes) - let subjectPublicKeyInfo: SubjectPublicKeyInfo = try SubjectPublicKeyInfo(derEncoded: &nodes) - let issuerUniqueID: ASN1BitString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) - let subjectUniqueID: ASN1BitString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific)) - let extensions: [Extension]? = try DER.optionalExplicitlyTagged(&nodes, tagNumber: 3, tagClass: .contextSpecific) { node in try DER.sequence(of: Extension.self, identifier: .sequence, rootNode: node) } - return TBSCertificate(version: version, serialNumber: serialNumber, signature: signature, issuer: issuer, validity: validity, subject: subject, subjectPublicKeyInfo: subjectPublicKeyInfo, issuerUniqueID: issuerUniqueID, subjectUniqueID: subjectUniqueID, extensions: extensions) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(explicitlyTaggedWithTagNumber: 0, tagClass: .contextSpecific) { codec in try codec.serialize(version) } - try coder.serialize(serialNumber) - try coder.serialize(signature) - try coder.serialize(issuer) - try coder.serialize(validity) - try coder.serialize(subject) - try coder.serialize(subjectPublicKeyInfo) - if let issuerUniqueID = self.issuerUniqueID { try coder.serializeOptionalImplicitlyTagged(issuerUniqueID, withIdentifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) } - if let subjectUniqueID = self.subjectUniqueID { try coder.serializeOptionalImplicitlyTagged(subjectUniqueID, withIdentifier: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific)) } - if let extensions = self.extensions { try coder.serialize(explicitlyTaggedWithTagNumber: 3, tagClass: .contextSpecific) { codec in try codec.serializeSequenceOf(extensions) } } - } - } -} diff --git a/Sources/ASN1SCG/Target.swift b/Sources/ASN1SCG/Target.swift deleted file mode 100644 index b829eb2..0000000 --- a/Sources/ASN1SCG/Target.swift +++ /dev/null @@ -1,38 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum Target: DERParseable, DERSerializable, Hashable, Sendable { - case targetName(GeneralName) - case targetGroup(GeneralName) - case targetCert(TargetCert) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific): - self = .targetName(try GeneralName(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific): - self = .targetGroup(try GeneralName(derEncoded: rootNode)) - case ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific): - self = .targetCert(try TargetCert(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .targetName(let targetName): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific), - { coder in try coder.serialize(targetName) }) - case .targetGroup(let targetGroup): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific), - { coder in try coder.serialize(targetGroup) }) - case .targetCert(let targetCert): - try coder.appendConstructedNode( - identifier: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific), - { coder in try coder.serialize(targetCert) }) - } - } - -} diff --git a/Sources/ASN1SCG/TargetCert.swift b/Sources/ASN1SCG/TargetCert.swift deleted file mode 100644 index a7ddb51..0000000 --- a/Sources/ASN1SCG/TargetCert.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct TargetCert: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var targetCertificate: IssuerSerial - @usableFromInline var targetName: GeneralName? - @usableFromInline var certDigestInfo: ObjectDigestInfo? - @inlinable init(targetCertificate: IssuerSerial, targetName: GeneralName?, certDigestInfo: ObjectDigestInfo?) { - self.targetCertificate = targetCertificate - self.targetName = targetName - self.certDigestInfo = certDigestInfo - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let targetCertificate: IssuerSerial = try IssuerSerial(derEncoded: &nodes) - let targetName: GeneralName? = try GeneralName(derEncoded: &nodes) - let certDigestInfo: ObjectDigestInfo? = try ObjectDigestInfo(derEncoded: &nodes) - return TargetCert(targetCertificate: targetCertificate, targetName: targetName, certDigestInfo: certDigestInfo) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(targetCertificate) - if let targetName = self.targetName { try coder.serialize(targetName) } - if let certDigestInfo = self.certDigestInfo { try coder.serialize(certDigestInfo) } - } - } -} diff --git a/Sources/ASN1SCG/TeletexDomainDefinedAttribute.swift b/Sources/ASN1SCG/TeletexDomainDefinedAttribute.swift deleted file mode 100644 index 9bef50b..0000000 --- a/Sources/ASN1SCG/TeletexDomainDefinedAttribute.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct TeletexDomainDefinedAttribute: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var type: ASN1TeletexString - @usableFromInline var value: ASN1TeletexString - @inlinable init(type: ASN1TeletexString, value: ASN1TeletexString) { - self.type = type - self.value = value - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let type: ASN1TeletexString = try ASN1TeletexString(derEncoded: &nodes) - let value: ASN1TeletexString = try ASN1TeletexString(derEncoded: &nodes) - return TeletexDomainDefinedAttribute(type: type, value: value) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(type) - try coder.serialize(value) - } - } -} diff --git a/Sources/ASN1SCG/TeletexPersonalName.swift b/Sources/ASN1SCG/TeletexPersonalName.swift deleted file mode 100644 index 051cbba..0000000 --- a/Sources/ASN1SCG/TeletexPersonalName.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct TeletexPersonalName: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .set } - @usableFromInline var surname: ASN1TeletexString - @usableFromInline var given_name: ASN1TeletexString? - @usableFromInline var initials: ASN1TeletexString? - @usableFromInline var generation_qualifier: ASN1TeletexString? - @inlinable init(surname: ASN1TeletexString, given_name: ASN1TeletexString?, initials: ASN1TeletexString?, generation_qualifier: ASN1TeletexString?) { - self.surname = surname - self.given_name = given_name - self.initials = initials - self.generation_qualifier = generation_qualifier - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.set(root, identifier: identifier) { nodes in - let surname: ASN1TeletexString = (try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)))! - let given_name: ASN1TeletexString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) - let initials: ASN1TeletexString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific)) - let generation_qualifier: ASN1TeletexString? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific)) - return TeletexPersonalName(surname: surname, given_name: given_name, initials: initials, generation_qualifier: generation_qualifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serializeOptionalImplicitlyTagged(surname, withIdentifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) - if let given_name = self.given_name { try coder.serializeOptionalImplicitlyTagged(given_name, withIdentifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) } - if let initials = self.initials { try coder.serializeOptionalImplicitlyTagged(initials, withIdentifier: ASN1Identifier(tagWithNumber: 2, tagClass: .contextSpecific)) } - if let generation_qualifier = self.generation_qualifier { try coder.serializeOptionalImplicitlyTagged(generation_qualifier, withIdentifier: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/TerminalType.swift b/Sources/ASN1SCG/TerminalType.swift deleted file mode 100644 index 7967025..0000000 --- a/Sources/ASN1SCG/TerminalType.swift +++ /dev/null @@ -1,12 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -public struct TerminalType : Hashable, Sendable, Comparable { - @usableFromInline var rawValue: Int - @inlinable public static func < (lhs: TerminalType, rhs: TerminalType) -> Bool { lhs.rawValue < rhs.rawValue } - @inlinable init(rawValue: Int) { self.rawValue = rawValue } - public static let telex = Self(rawValue: 3) - public static let teletex = Self(rawValue: 4) - public static let g3_facsimile = Self(rawValue: 5) - public static let g4_facsimile = Self(rawValue: 6) - public static let ia5_terminal = Self(rawValue: 7) - public static let videotex = Self(rawValue: 8) -} diff --git a/Sources/ASN1SCG/Time.swift b/Sources/ASN1SCG/Time.swift deleted file mode 100644 index 85293f1..0000000 --- a/Sources/ASN1SCG/Time.swift +++ /dev/null @@ -1,25 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum Time: DERParseable, DERSerializable, Hashable, Sendable { - case utcTime(UTCTime) - case generalTime(GeneralizedTime) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case UTCTime.defaultIdentifier: - self = .utcTime(try UTCTime(derEncoded: rootNode)) - case GeneralizedTime.defaultIdentifier: - self = .generalTime(try GeneralizedTime(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .utcTime(let utcTime): try coder.serialize(utcTime) - case .generalTime(let generalTime): try coder.serialize(generalTime) - } - } - -} diff --git a/Sources/ASN1SCG/Typing.swift b/Sources/ASN1SCG/Typing.swift deleted file mode 100644 index 8d23d31..0000000 --- a/Sources/ASN1SCG/Typing.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Typing: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var session: ASN1OctetString - @usableFromInline var nickname: ASN1OctetString - @usableFromInline var comments: [ASN1OctetString] - @inlinable init(session: ASN1OctetString, nickname: ASN1OctetString, comments: [ASN1OctetString]) { - self.session = session - self.nickname = nickname - self.comments = comments - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let session: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let nickname: ASN1OctetString = try ASN1OctetString(derEncoded: &nodes) - let comments: [ASN1OctetString] = try DER.sequence(of: ASN1OctetString.self, identifier: .sequence, nodes: &nodes) - return Typing(session: session, nickname: nickname, comments: comments) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(session) - try coder.serialize(nickname) - try coder.serializeSequenceOf(comments) - } - } -} diff --git a/Sources/ASN1SCG/UnformattedPostalAddress.swift b/Sources/ASN1SCG/UnformattedPostalAddress.swift deleted file mode 100644 index f803cc5..0000000 --- a/Sources/ASN1SCG/UnformattedPostalAddress.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct UnformattedPostalAddress: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .set } - @usableFromInline var printable_address: [ASN1PrintableString]? - @usableFromInline var teletex_string: ASN1TeletexString? - @inlinable init(printable_address: [ASN1PrintableString]?, teletex_string: ASN1TeletexString?) { - self.printable_address = printable_address - self.teletex_string = teletex_string - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.set(root, identifier: identifier) { nodes in - let printable_address: [ASN1PrintableString]? = try DER.sequence(of: ASN1PrintableString.self, identifier: .sequence, nodes: &nodes) - let teletex_string: ASN1TeletexString? = try ASN1TeletexString(derEncoded: &nodes) - return UnformattedPostalAddress(printable_address: printable_address, teletex_string: teletex_string) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - if let printable_address = self.printable_address { try coder.serializeSequenceOf(printable_address) } - if let teletex_string = self.teletex_string { try coder.serialize(teletex_string) } - } - } -} diff --git a/Sources/ASN1SCG/UserNotice.swift b/Sources/ASN1SCG/UserNotice.swift deleted file mode 100644 index c04fff0..0000000 --- a/Sources/ASN1SCG/UserNotice.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct UserNotice: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var noticeRef: NoticeReference? - @usableFromInline var explicitText: DisplayText? - @inlinable init(noticeRef: NoticeReference?, explicitText: DisplayText?) { - self.noticeRef = noticeRef - self.explicitText = explicitText - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let noticeRef: NoticeReference? = try NoticeReference(derEncoded: &nodes) - let explicitText: DisplayText? = try DisplayText(derEncoded: &nodes) - return UserNotice(noticeRef: noticeRef, explicitText: explicitText) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - if let noticeRef = self.noticeRef { try coder.serialize(noticeRef) } - if let explicitText = self.explicitText { try coder.serialize(explicitText) } - } - } -} diff --git a/Sources/ASN1SCG/V.swift b/Sources/ASN1SCG/V.swift deleted file mode 100644 index 2c2b31b..0000000 --- a/Sources/ASN1SCG/V.swift +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct V: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var a: [ArraySlice] - @usableFromInline var b: [ArraySlice] - @usableFromInline var c: ArraySlice - @usableFromInline var d: ArraySlice - @usableFromInline var e: Bool - @usableFromInline var f: Bool - @usableFromInline var g: [ArraySlice]? - @usableFromInline var h: [ArraySlice]? - @usableFromInline var i: ArraySlice? - @usableFromInline var j: ArraySlice? - @usableFromInline var k: ASN1OctetString? - @usableFromInline var l: Bool? - @inlinable init(a: [ArraySlice], b: [ArraySlice], c: ArraySlice, d: ArraySlice, e: Bool, f: Bool, g: [ArraySlice]?, h: [ArraySlice]?, i: ArraySlice?, j: ArraySlice?, k: ASN1OctetString?, l: Bool?) { - self.a = a - self.b = b - self.c = c - self.d = d - self.e = e - self.f = f - self.g = g - self.h = h - self.i = i - self.j = j - self.k = k - self.l = l - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let a: [ArraySlice] = try DER.set(of: ArraySlice.self, identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific), nodes: &nodes) - let b: [ArraySlice] = try DER.explicitlyTagged(&nodes, tagNumber: 2, tagClass: .contextSpecific) { node in try DER.set(of: ArraySlice.self, identifier: .set, rootNode: node) } - let c: ArraySlice = (try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific)))! - let d: ArraySlice = try DER.explicitlyTagged(&nodes, tagNumber: 4, tagClass: .contextSpecific) { node in return try ArraySlice(derEncoded: node) } - let e: Bool = (try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 5, tagClass: .contextSpecific)))! - let f: Bool = try DER.explicitlyTagged(&nodes, tagNumber: 6, tagClass: .contextSpecific) { node in return try Bool(derEncoded: node) } - let g: [ArraySlice] = try DER.set(of: ArraySlice.self, identifier: ASN1Identifier(tagWithNumber: 7, tagClass: .contextSpecific), nodes: &nodes) - let h: [ArraySlice]? = try DER.optionalExplicitlyTagged(&nodes, tagNumber: 8, tagClass: .contextSpecific) { node in try DER.set(of: ArraySlice.self, identifier: .set, rootNode: node) } - let i: ArraySlice? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 9, tagClass: .contextSpecific)) - let j: ArraySlice? = try DER.optionalExplicitlyTagged(&nodes, tagNumber: 0, tagClass: .contextSpecific) { node in return try ArraySlice(derEncoded: node) } - let k: ASN1OctetString? = try ASN1OctetString(derEncoded: &nodes) - let l: Bool? = try Bool(derEncoded: &nodes) - return V(a: a, b: b, c: c, d: d, e: e, f: f, g: g, h: h, i: i, j: j, k: k, l: l) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serializeSetOf(a, identifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) - try coder.serialize(explicitlyTaggedWithTagNumber: 2, tagClass: .contextSpecific) { codec in try codec.serializeSetOf(b) } - try coder.serializeOptionalImplicitlyTagged(c, withIdentifier: ASN1Identifier(tagWithNumber: 3, tagClass: .contextSpecific)) - try coder.serialize(explicitlyTaggedWithTagNumber: 4, tagClass: .contextSpecific) { codec in try codec.serialize(d) } - try coder.serializeOptionalImplicitlyTagged(e, withIdentifier: ASN1Identifier(tagWithNumber: 5, tagClass: .contextSpecific)) - try coder.serialize(explicitlyTaggedWithTagNumber: 6, tagClass: .contextSpecific) { codec in try codec.serialize(f) } - if let g = self.g { try coder.serializeSetOf(g, identifier: ASN1Identifier(tagWithNumber: 7, tagClass: .contextSpecific)) } - if let h = self.h { try coder.serialize(explicitlyTaggedWithTagNumber: 8, tagClass: .contextSpecific) { codec in try codec.serializeSetOf(h) } } - if let i = self.i { try coder.serializeOptionalImplicitlyTagged(i, withIdentifier: ASN1Identifier(tagWithNumber: 9, tagClass: .contextSpecific)) } - if let j = self.j { try coder.serialize(explicitlyTaggedWithTagNumber: 0, tagClass: .contextSpecific) { codec in try codec.serialize(j) } } - if let k = self.k { try coder.serialize(k) } - if let l = self.l { try coder.serialize(l) } - } - } -} diff --git a/Sources/ASN1SCG/V2.swift b/Sources/ASN1SCG/V2.swift deleted file mode 100644 index 010ceb1..0000000 --- a/Sources/ASN1SCG/V2.swift +++ /dev/null @@ -1,65 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct V2: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var a: [ArraySlice] - @usableFromInline var b: [ArraySlice] - @usableFromInline var c: ArraySlice - @usableFromInline var d: ArraySlice - @usableFromInline var e: Bool - @usableFromInline var f: Bool - @usableFromInline var g: [ArraySlice]? - @usableFromInline var h: ArraySlice - @usableFromInline var i: ArraySlice - @usableFromInline var j: ASN1OctetString? - @usableFromInline var k: Bool? - @inlinable init(a: [ArraySlice], b: [ArraySlice], c: ArraySlice, d: ArraySlice, e: Bool, f: Bool, g: [ArraySlice]?, h: ArraySlice, i: ArraySlice, j: ASN1OctetString?, k: Bool?) { - self.a = a - self.b = b - self.c = c - self.d = d - self.e = e - self.f = f - self.g = g - self.h = h - self.i = i - self.j = j - self.k = k - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let a: [ArraySlice] = try DER.set(of: ArraySlice.self, identifier: .set, nodes: &nodes) - let b: [ArraySlice] = try DER.set(of: ArraySlice.self, identifier: .set, nodes: &nodes) - let c: ArraySlice = try ArraySlice(derEncoded: &nodes) - let d: ArraySlice = try ArraySlice(derEncoded: &nodes) - let e: Bool = try Bool(derEncoded: &nodes) - let f: Bool = try Bool(derEncoded: &nodes) - let g: [ArraySlice]? = try DER.set(of: ArraySlice.self, identifier: .set, nodes: &nodes) - let h: ArraySlice = try ArraySlice(derEncoded: &nodes) - let i: ArraySlice = try ArraySlice(derEncoded: &nodes) - let j: ASN1OctetString? = try ASN1OctetString(derEncoded: &nodes) - let k: Bool? = try Bool(derEncoded: &nodes) - return V2(a: a, b: b, c: c, d: d, e: e, f: f, g: g, h: h, i: i, j: j, k: k) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serializeSetOf(a) - try coder.serializeSetOf(b) - try coder.serialize(c) - try coder.serialize(d) - try coder.serialize(e) - try coder.serialize(f) - if let g = self.g { try coder.serializeSetOf(g) } - try coder.serialize(h) - try coder.serialize(i) - if let j = self.j { try coder.serialize(j) } - if let k = self.k { try coder.serialize(k) } - } - } -} diff --git a/Sources/ASN1SCG/V2Form.swift b/Sources/ASN1SCG/V2Form.swift deleted file mode 100644 index 7302985..0000000 --- a/Sources/ASN1SCG/V2Form.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct V2Form: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var issuerName: [GeneralName]? - @usableFromInline var baseCertificateID: IssuerSerial? - @usableFromInline var objectDigestInfo: ObjectDigestInfo? - @inlinable init(issuerName: [GeneralName]?, baseCertificateID: IssuerSerial?, objectDigestInfo: ObjectDigestInfo?) { - self.issuerName = issuerName - self.baseCertificateID = baseCertificateID - self.objectDigestInfo = objectDigestInfo - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let issuerName: [GeneralName]? = try DER.sequence(of: GeneralName.self, identifier: .sequence, nodes: &nodes) - let baseCertificateID: IssuerSerial? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) - let objectDigestInfo: ObjectDigestInfo? = try DER.optionalImplicitlyTagged(&nodes, tag: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) - return V2Form(issuerName: issuerName, baseCertificateID: baseCertificateID, objectDigestInfo: objectDigestInfo) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - if let issuerName = self.issuerName { try coder.serializeSequenceOf(issuerName) } - if let baseCertificateID = self.baseCertificateID { try coder.serializeOptionalImplicitlyTagged(baseCertificateID, withIdentifier: ASN1Identifier(tagWithNumber: 0, tagClass: .contextSpecific)) } - if let objectDigestInfo = self.objectDigestInfo { try coder.serializeOptionalImplicitlyTagged(objectDigestInfo, withIdentifier: ASN1Identifier(tagWithNumber: 1, tagClass: .contextSpecific)) } - } - } -} diff --git a/Sources/ASN1SCG/Validity.swift b/Sources/ASN1SCG/Validity.swift deleted file mode 100644 index 8de69c4..0000000 --- a/Sources/ASN1SCG/Validity.swift +++ /dev/null @@ -1,29 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct Validity: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence } - @usableFromInline var notBefore: Time - @usableFromInline var notAfter: Time - @inlinable init(notBefore: Time, notAfter: Time) { - self.notBefore = notBefore - self.notAfter = notAfter - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.sequence(root, identifier: identifier) { nodes in - let notBefore: Time = try Time(derEncoded: &nodes) - let notAfter: Time = try Time(derEncoded: &nodes) - return Validity(notBefore: notBefore, notAfter: notAfter) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(notBefore) - try coder.serialize(notAfter) - } - } -} diff --git a/Sources/ASN1SCG/Version.swift b/Sources/ASN1SCG/Version.swift deleted file mode 100644 index 232c372..0000000 --- a/Sources/ASN1SCG/Version.swift +++ /dev/null @@ -1,9 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -public struct Version : Hashable, Sendable, Comparable { - @usableFromInline var rawValue: Int - @inlinable public static func < (lhs: Version, rhs: Version) -> Bool { lhs.rawValue < rhs.rawValue } - @inlinable init(rawValue: Int) { self.rawValue = rawValue } - public static let v1 = Self(rawValue: 0) - public static let v2 = Self(rawValue: 1) - public static let v3 = Self(rawValue: 2) -} diff --git a/Sources/ASN1SCG/Versioning.swift b/Sources/ASN1SCG/Versioning.swift deleted file mode 100644 index 624cec9..0000000 --- a/Sources/ASN1SCG/Versioning.swift +++ /dev/null @@ -1,7 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -public struct Versioning : Hashable, Sendable, Comparable { - @usableFromInline var rawValue: Int - @inlinable public static func < (lhs: Versioning, rhs: Versioning) -> Bool { lhs.rawValue < rhs.rawValue } - @inlinable init(rawValue: Int) { self.rawValue = rawValue } - public static let v1 = Self(rawValue: 0) -} diff --git a/Sources/ASN1SCG/X.swift b/Sources/ASN1SCG/X.swift deleted file mode 100644 index 93744c6..0000000 --- a/Sources/ASN1SCG/X.swift +++ /dev/null @@ -1,33 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline struct X: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .set } - @usableFromInline var a: ArraySlice - @usableFromInline var b: [ASN1OctetString] - @usableFromInline var d: Real - @inlinable init(a: ArraySlice, b: [ASN1OctetString], d: Real) { - self.a = a - self.b = b - self.d = d - } - @inlinable init(derEncoded root: ASN1Node, - withIdentifier identifier: ASN1Identifier) throws { - self = try DER.set(root, identifier: identifier) { nodes in - let a: ArraySlice = try ArraySlice(derEncoded: &nodes) - let b: [ASN1OctetString] = try DER.set(of: ASN1OctetString.self, identifier: .set, nodes: &nodes) - let d: Real = try Real(derEncoded: &nodes) - return X(a: a, b: b, d: d) - } - } - @inlinable func serialize(into coder: inout DER.Serializer, - withIdentifier identifier: ASN1Identifier) throws { - try coder.appendConstructedNode(identifier: identifier) { coder in - try coder.serialize(a) - try coder.serializeSetOf(b) - try coder.serialize(d) - } - } -} diff --git a/Sources/ASN1SCG/X520CommonName.swift b/Sources/ASN1SCG/X520CommonName.swift deleted file mode 100644 index 84406d4..0000000 --- a/Sources/ASN1SCG/X520CommonName.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum X520CommonName: DERParseable, DERSerializable, Hashable, Sendable { - case teletexString(ASN1TeletexString) - case printableString(ASN1PrintableString) - case universalString(ASN1UniversalString) - case utf8String(ASN1UTF8String) - case bmpString(ASN1BMPString) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1TeletexString.defaultIdentifier: - self = .teletexString(try ASN1TeletexString(derEncoded: rootNode)) - case ASN1PrintableString.defaultIdentifier: - self = .printableString(try ASN1PrintableString(derEncoded: rootNode)) - case ASN1UniversalString.defaultIdentifier: - self = .universalString(try ASN1UniversalString(derEncoded: rootNode)) - case ASN1UTF8String.defaultIdentifier: - self = .utf8String(try ASN1UTF8String(derEncoded: rootNode)) - case ASN1BMPString.defaultIdentifier: - self = .bmpString(try ASN1BMPString(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .teletexString(let teletexString): try coder.serialize(teletexString) - case .printableString(let printableString): try coder.serialize(printableString) - case .universalString(let universalString): try coder.serialize(universalString) - case .utf8String(let utf8String): try coder.serialize(utf8String) - case .bmpString(let bmpString): try coder.serialize(bmpString) - } - } - -} diff --git a/Sources/ASN1SCG/X520LocalityName.swift b/Sources/ASN1SCG/X520LocalityName.swift deleted file mode 100644 index 3a45558..0000000 --- a/Sources/ASN1SCG/X520LocalityName.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum X520LocalityName: DERParseable, DERSerializable, Hashable, Sendable { - case teletexString(ASN1TeletexString) - case printableString(ASN1PrintableString) - case universalString(ASN1UniversalString) - case utf8String(ASN1UTF8String) - case bmpString(ASN1BMPString) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1TeletexString.defaultIdentifier: - self = .teletexString(try ASN1TeletexString(derEncoded: rootNode)) - case ASN1PrintableString.defaultIdentifier: - self = .printableString(try ASN1PrintableString(derEncoded: rootNode)) - case ASN1UniversalString.defaultIdentifier: - self = .universalString(try ASN1UniversalString(derEncoded: rootNode)) - case ASN1UTF8String.defaultIdentifier: - self = .utf8String(try ASN1UTF8String(derEncoded: rootNode)) - case ASN1BMPString.defaultIdentifier: - self = .bmpString(try ASN1BMPString(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .teletexString(let teletexString): try coder.serialize(teletexString) - case .printableString(let printableString): try coder.serialize(printableString) - case .universalString(let universalString): try coder.serialize(universalString) - case .utf8String(let utf8String): try coder.serialize(utf8String) - case .bmpString(let bmpString): try coder.serialize(bmpString) - } - } - -} diff --git a/Sources/ASN1SCG/X520OrganizationName.swift b/Sources/ASN1SCG/X520OrganizationName.swift deleted file mode 100644 index 37d8a20..0000000 --- a/Sources/ASN1SCG/X520OrganizationName.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum X520OrganizationName: DERParseable, DERSerializable, Hashable, Sendable { - case teletexString(ASN1TeletexString) - case printableString(ASN1PrintableString) - case universalString(ASN1UniversalString) - case utf8String(ASN1UTF8String) - case bmpString(ASN1BMPString) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1TeletexString.defaultIdentifier: - self = .teletexString(try ASN1TeletexString(derEncoded: rootNode)) - case ASN1PrintableString.defaultIdentifier: - self = .printableString(try ASN1PrintableString(derEncoded: rootNode)) - case ASN1UniversalString.defaultIdentifier: - self = .universalString(try ASN1UniversalString(derEncoded: rootNode)) - case ASN1UTF8String.defaultIdentifier: - self = .utf8String(try ASN1UTF8String(derEncoded: rootNode)) - case ASN1BMPString.defaultIdentifier: - self = .bmpString(try ASN1BMPString(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .teletexString(let teletexString): try coder.serialize(teletexString) - case .printableString(let printableString): try coder.serialize(printableString) - case .universalString(let universalString): try coder.serialize(universalString) - case .utf8String(let utf8String): try coder.serialize(utf8String) - case .bmpString(let bmpString): try coder.serialize(bmpString) - } - } - -} diff --git a/Sources/ASN1SCG/X520OrganizationalUnitName.swift b/Sources/ASN1SCG/X520OrganizationalUnitName.swift deleted file mode 100644 index 78704de..0000000 --- a/Sources/ASN1SCG/X520OrganizationalUnitName.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum X520OrganizationalUnitName: DERParseable, DERSerializable, Hashable, Sendable { - case teletexString(ASN1TeletexString) - case printableString(ASN1PrintableString) - case universalString(ASN1UniversalString) - case utf8String(ASN1UTF8String) - case bmpString(ASN1BMPString) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1TeletexString.defaultIdentifier: - self = .teletexString(try ASN1TeletexString(derEncoded: rootNode)) - case ASN1PrintableString.defaultIdentifier: - self = .printableString(try ASN1PrintableString(derEncoded: rootNode)) - case ASN1UniversalString.defaultIdentifier: - self = .universalString(try ASN1UniversalString(derEncoded: rootNode)) - case ASN1UTF8String.defaultIdentifier: - self = .utf8String(try ASN1UTF8String(derEncoded: rootNode)) - case ASN1BMPString.defaultIdentifier: - self = .bmpString(try ASN1BMPString(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .teletexString(let teletexString): try coder.serialize(teletexString) - case .printableString(let printableString): try coder.serialize(printableString) - case .universalString(let universalString): try coder.serialize(universalString) - case .utf8String(let utf8String): try coder.serialize(utf8String) - case .bmpString(let bmpString): try coder.serialize(bmpString) - } - } - -} diff --git a/Sources/ASN1SCG/X520Pseudonym.swift b/Sources/ASN1SCG/X520Pseudonym.swift deleted file mode 100644 index 6e45e8c..0000000 --- a/Sources/ASN1SCG/X520Pseudonym.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum X520Pseudonym: DERParseable, DERSerializable, Hashable, Sendable { - case teletexString(ASN1TeletexString) - case printableString(ASN1PrintableString) - case universalString(ASN1UniversalString) - case utf8String(ASN1UTF8String) - case bmpString(ASN1BMPString) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1TeletexString.defaultIdentifier: - self = .teletexString(try ASN1TeletexString(derEncoded: rootNode)) - case ASN1PrintableString.defaultIdentifier: - self = .printableString(try ASN1PrintableString(derEncoded: rootNode)) - case ASN1UniversalString.defaultIdentifier: - self = .universalString(try ASN1UniversalString(derEncoded: rootNode)) - case ASN1UTF8String.defaultIdentifier: - self = .utf8String(try ASN1UTF8String(derEncoded: rootNode)) - case ASN1BMPString.defaultIdentifier: - self = .bmpString(try ASN1BMPString(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .teletexString(let teletexString): try coder.serialize(teletexString) - case .printableString(let printableString): try coder.serialize(printableString) - case .universalString(let universalString): try coder.serialize(universalString) - case .utf8String(let utf8String): try coder.serialize(utf8String) - case .bmpString(let bmpString): try coder.serialize(bmpString) - } - } - -} diff --git a/Sources/ASN1SCG/X520StateOrProvinceName.swift b/Sources/ASN1SCG/X520StateOrProvinceName.swift deleted file mode 100644 index d3ec475..0000000 --- a/Sources/ASN1SCG/X520StateOrProvinceName.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum X520StateOrProvinceName: DERParseable, DERSerializable, Hashable, Sendable { - case teletexString(ASN1TeletexString) - case printableString(ASN1PrintableString) - case universalString(ASN1UniversalString) - case utf8String(ASN1UTF8String) - case bmpString(ASN1BMPString) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1TeletexString.defaultIdentifier: - self = .teletexString(try ASN1TeletexString(derEncoded: rootNode)) - case ASN1PrintableString.defaultIdentifier: - self = .printableString(try ASN1PrintableString(derEncoded: rootNode)) - case ASN1UniversalString.defaultIdentifier: - self = .universalString(try ASN1UniversalString(derEncoded: rootNode)) - case ASN1UTF8String.defaultIdentifier: - self = .utf8String(try ASN1UTF8String(derEncoded: rootNode)) - case ASN1BMPString.defaultIdentifier: - self = .bmpString(try ASN1BMPString(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .teletexString(let teletexString): try coder.serialize(teletexString) - case .printableString(let printableString): try coder.serialize(printableString) - case .universalString(let universalString): try coder.serialize(universalString) - case .utf8String(let utf8String): try coder.serialize(utf8String) - case .bmpString(let bmpString): try coder.serialize(bmpString) - } - } - -} diff --git a/Sources/ASN1SCG/X520Title.swift b/Sources/ASN1SCG/X520Title.swift deleted file mode 100644 index ffa0460..0000000 --- a/Sources/ASN1SCG/X520Title.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum X520Title: DERParseable, DERSerializable, Hashable, Sendable { - case teletexString(ASN1TeletexString) - case printableString(ASN1PrintableString) - case universalString(ASN1UniversalString) - case utf8String(ASN1UTF8String) - case bmpString(ASN1BMPString) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1TeletexString.defaultIdentifier: - self = .teletexString(try ASN1TeletexString(derEncoded: rootNode)) - case ASN1PrintableString.defaultIdentifier: - self = .printableString(try ASN1PrintableString(derEncoded: rootNode)) - case ASN1UniversalString.defaultIdentifier: - self = .universalString(try ASN1UniversalString(derEncoded: rootNode)) - case ASN1UTF8String.defaultIdentifier: - self = .utf8String(try ASN1UTF8String(derEncoded: rootNode)) - case ASN1BMPString.defaultIdentifier: - self = .bmpString(try ASN1BMPString(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .teletexString(let teletexString): try coder.serialize(teletexString) - case .printableString(let printableString): try coder.serialize(printableString) - case .universalString(let universalString): try coder.serialize(universalString) - case .utf8String(let utf8String): try coder.serialize(utf8String) - case .bmpString(let bmpString): try coder.serialize(bmpString) - } - } - -} diff --git a/Sources/ASN1SCG/X520name.swift b/Sources/ASN1SCG/X520name.swift deleted file mode 100644 index 9216aa2..0000000 --- a/Sources/ASN1SCG/X520name.swift +++ /dev/null @@ -1,37 +0,0 @@ -// Generated by ASN1.ERP.UNO Compiler, Copyright © 2023 Namdak Tonpa. -import SwiftASN1 -import Crypto -import Foundation - -@usableFromInline indirect enum X520name: DERParseable, DERSerializable, Hashable, Sendable { - case teletexString(ASN1TeletexString) - case printableString(ASN1PrintableString) - case universalString(ASN1UniversalString) - case utf8String(ASN1UTF8String) - case bmpString(ASN1BMPString) - @inlinable init(derEncoded rootNode: ASN1Node) throws { - switch rootNode.identifier { - case ASN1TeletexString.defaultIdentifier: - self = .teletexString(try ASN1TeletexString(derEncoded: rootNode)) - case ASN1PrintableString.defaultIdentifier: - self = .printableString(try ASN1PrintableString(derEncoded: rootNode)) - case ASN1UniversalString.defaultIdentifier: - self = .universalString(try ASN1UniversalString(derEncoded: rootNode)) - case ASN1UTF8String.defaultIdentifier: - self = .utf8String(try ASN1UTF8String(derEncoded: rootNode)) - case ASN1BMPString.defaultIdentifier: - self = .bmpString(try ASN1BMPString(derEncoded: rootNode)) - default: throw ASN1Error.unexpectedFieldType(rootNode.identifier) - } - } - @inlinable func serialize(into coder: inout DER.Serializer) throws { - switch self { - case .teletexString(let teletexString): try coder.serialize(teletexString) - case .printableString(let printableString): try coder.serialize(printableString) - case .universalString(let universalString): try coder.serialize(universalString) - case .utf8String(let utf8String): try coder.serialize(utf8String) - case .bmpString(let bmpString): try coder.serialize(bmpString) - } - } - -} diff --git a/asn1.ex b/asn1.ex index e1e37f3..5b0f763 100755 --- a/asn1.ex +++ b/asn1.ex @@ -1,6 +1,121 @@ #!/usr/bin/env elixir + defmodule ASN1SwiftCodeGenerator do + + def var_decl(index, type) do + """ + var w#{index} : #{variable_type(index, type)} = [] + """ + end + def generate_swift_code(identifiers, default, type) do + variable_names = Enum.reverse(identifiers) + if length(identifiers) < 2 do + default + else + ser = generate_serialize_code(tl(identifiers)) + IO.inspect(type) + methods = generate_method(length(identifiers), identifiers, length(variable_names), type) + """ + @inlinable init(derEncoded root: ASN1Node, + withIdentifier identifier: ASN1Identifier) throws { + let res = #{methods} + + self.w = res + } + #{ser} + """ + end + end + + def generate_method(len, identifiers, level, type) do + if level == 0 do + """ + contentsOf: try DER.sequence(of: #{type}.self, identifier: .sequence, rootNode: node0) + """ + else + dd =hd(identifiers) + winner = if( len == length(identifiers), do: "root", else: "node#{level}") + case dd do + ".sequence" -> """ + try DER.sequence(#{winner }, identifier: .sequence) { nodes#{level} in \n + #{var_decl(level, type)} + while let node#{level-1} = nodes#{level}.next() { + w#{level}.append( + #{generate_method(len, tl(identifiers), level - 1, type )} + ) + } + return w#{level}\n + } + """ + ".set" -> """ + try DER.set(#{winner}, identifier: .set) { nodes#{level} in \n + #{var_decl(level, type)} + while let node#{level-1} = nodes#{level}.next() { + w#{level}.append( + #{generate_method(len, tl(identifiers), level - 1, type)} + ) + }\n + return w#{level} + }\n + """ + _ -> "try DER.sequence(root, identifier: .sequence, rootNode: nodes)" + end + # dd = + end + end + + def variable_type(level, type) do + IO.inspect(type) + String.duplicate("[", level) <> type <> String.duplicate("]", level) + end + + defp generate_serialize_code(variable_names) do + serialize_body = generate_serialize_body(tl(variable_names), "codec1", "element") + + """ + @inlinable func serialize(into coder: inout DER.Serializer, + withIdentifier identifier: ASN1Identifier) throws { + try coder.appendConstructedNode(identifier: identifier) {coder_ in + try coder_.appendConstructedNode(identifier: #{hd(variable_names)}) { + codec1 in for element in w { + #{serialize_body} + }} + } + } + """ + end + + defp generate_serialize_body([current | rest], variable_name, element) do + next_variable_name = "#{variable_name}_1" + next_element = "#{element}_1" + """ + try #{variable_name}.appendConstructedNode(identifier: #{current}) { + #{next_variable_name} in for #{next_element} in #{element} { + #{generate_serialize_body(rest, next_variable_name, next_element)} + } + } + """ + end + + defp generate_serialize_body([], variable_name, element) do + """ + try #{variable_name}.serializeSequenceOf(#{element}) + """ + end +end + + defmodule ASN1 do + def get_sequence_and_set_of({:type, _, inner_type, _, _, _} = node, acc) do + case inner_type do + {:"SEQUENCE OF", res } -> get_sequence_and_set_of(res, [".sequence" | acc]) + {:"SET OF",res } -> get_sequence_and_set_of(res , [".set" | acc]) + _ -> {acc, inner_type} + end + end + + + def print(format, params) do case :application.get_env(:asn1scg, "save", true) and :application.get_env(:asn1scg, "verbose", false) do @@ -14,9 +129,9 @@ defmodule ASN1 do type1 = bin(type) case level do "" -> [] - _ -> print 'array: #{level} : ~ts = [~ts] ~p ~n', [name1, type1, tag] + _ -> print ~c'array: #{level} : ~ts = [~ts] ~p ~n', [name1, type1, tag] end -# :io.format 'seqof:8: ~p [~ts]~n', [name1, lookup(bin(type1)) ] + :io.format ~c'seqof:8: ~p [~ts]~n', [name1, lookup(bin(type1)) ] setEnv(name1, "[#{type1}]") setEnv({:array, name1}, {tag, type1}) name1 @@ -36,8 +151,8 @@ defmodule ASN1 do def fieldType(_,_,{:"BIT STRING", _}), do: "ASN1BitString" def fieldType(_,_,{:pt, {_,_,_,type}, _}) when is_atom(type), do: "#{type}" def fieldType(_,_,{:ANY_DEFINED_BY, type}) when is_atom(type), do: "ASN1Any" - def fieldType(_name,_field,{:Externaltypereference,_,_,type}) when type == :OrganizationalUnitNames do -# :io.format 'seqof:1: ~p.~p ~ts~n', [name, field, type ] #lookup(bin(type)) ] + def fieldType(name,field,{:Externaltypereference,_,_,type}) when type == :OrganizationalUnitNames do + :io.format ~c'seqof:1: ~p.~p ~ts~n', [name, field, type ] #lookup(bin(type)) ] "#{substituteType(lookup(bin(type)))}" end def fieldType(_name,_field,{:Externaltypereference,_,_,type}) do @@ -61,7 +176,7 @@ defmodule ASN1 do def sequenceOf2(name,field,{:type,_,{:SEQUENCE, _, _, _, fields} = product,_,_,_}) do sequence(fieldType(name,field,product), fields, [], true) ; bin(name) <> "_" <> bin(field) <> "_Sequence" end def sequenceOf2(name,field,{:type,_,type,_,_,_}) do "#{sequenceOf(name,field,type)}" end - def sequenceOf2(name,_,{:Externaltypereference, _, _, type}) do + def sequenceOf2(name,_,{:Externaltypereference, _, _, type}) do # :io.format 'seqof:4: ~p.~p~n', [name, type] :application.get_env(:asn1scg, bin(name), bin(type)) end def sequenceOf2(_,_,x) when is_tuple(x), do: substituteType("#{bin(:erlang.element(1, x))}") @@ -171,12 +286,14 @@ defmodule ASN1 do pad(w) <> "case ASN1Identifier(tagWithNumber: #{no}, tagClass: .contextSpecific):\n" <> pad(w+4) <> "self = .#{name}(try DER.#{spec}(of: #{type}.self, identifier: .#{spec}, rootNode: rootNode))" - def emitSequenceDefinition(name,fields,ctor,decoder,encoder), do: + def emitSequenceDefinition(name,fields,ctor,decoder,encoder, kek), do: """ #{emitImprint()} import SwiftASN1\nimport Crypto\nimport Foundation\n @usableFromInline struct #{name}: DERImplicitlyTaggable, Hashable, Sendable { - @inlinable static var defaultIdentifier: ASN1Identifier { .sequence }\n#{fields}#{ctor}#{decoder}#{encoder}} + @inlinable static var defaultIdentifier: ASN1Identifier { .sequence }\n#{fields}#{ctor} + #{kek};\n + } """ def emitSetDefinition(name,fields,ctor,decoder,encoder), do: @@ -332,8 +449,8 @@ public struct #{name} : Hashable, Sendable, Comparable { _ -> :skip end - print 'field: ~ts.~ts : ~ts ~n', [name,fieldName(fieldName), substituteType(lookup(field))] - pad(w) <> + print ~c'field: ~ts.~ts : ~ts ~n', [name,fieldName(fieldName), substituteType(lookup(field))] + pad(w) <> emitSequenceElementOptional(fieldName(fieldName), substituteType(lookup(field)), opt(optional)) _ -> "" end, fields), "") @@ -484,22 +601,22 @@ public struct #{name} : Hashable, Sendable, Comparable { end def dump() do - :lists.foldl(fn {{:array,x},{tag,y}}, _ -> print 'env array: ~ts = [~ts] ~tp ~n', [x,y,tag] - {x,y}, _ when is_binary(x) -> print 'env alias: ~ts = ~ts ~n', [x,y] - {{:type,x},_}, _ -> print 'env type: ~ts = ... ~n', [x] + :lists.foldl(fn {{:array,x},{tag,y}}, _ -> print ~c'env array: ~ts = [~ts] ~tp ~n', [x,y,tag] + {x,y}, _ when is_binary(x) -> print ~c'env alias: ~ts = ~ts ~n', [x,y] + {{:type,x},_}, _ -> print ~c'env type: ~ts = ... ~n', [x] _, _ -> :ok end, [], :lists.sort(:application.get_all_env(:asn1scg))) end def compile() do {:ok, f} = :file.list_dir inputDir() - files = :lists.filter(fn x -> [_,y] = :string.tokens(x, '.') ; y == 'asn1' end, f) + files = :lists.filter(fn x -> [_,y] = :string.tokens(x, ~c'.') ; y == ~c'asn1' end, f) setEnv(:save, false) ; :lists.map(fn file -> compile(false, inputDir() <> :erlang.list_to_binary(file)) end, files) setEnv(:save, false) ; :lists.map(fn file -> compile(false, inputDir() <> :erlang.list_to_binary(file)) end, files) setEnv(:save, true) ; :lists.map(fn file -> compile(true, inputDir() <> :erlang.list_to_binary(file)) end, files) - print 'inputDir: ~ts~n', [inputDir()] - print 'outputDir: ~ts~n', [outputDir()] - print 'coverage: ~tp~n', [coverage()] + print ~c'inputDir: ~ts~n', [inputDir()] + print ~c'outputDir: ~ts~n', [outputDir()] + print ~c'coverage: ~tp~n', [coverage()] dump() :ok end @@ -527,12 +644,33 @@ public struct #{name} : Hashable, Sendable, Comparable { {:type, _, {:"ENUMERATED", cases}, _, [], :no} -> enumeration(name, cases, modname, save) {:type, _, {:"CHOICE", cases}, _, [], :no} -> choice(name, cases, modname, save) {:type, _, {:"SEQUENCE", _, _, _, fields}, _, _, :no} -> sequence(name, fields, modname, save) - {:type, _, {:"SET", _, _, _, fields}, _, _, :no} -> set(name, fields, modname, save) + {:type, _, {:"SET", _, _, _, fields}, _, _, :no} -> + :io.format ~c'seqof:548: ~p ~p ~n', [name, name] + set(name, fields, modname, save) {:type, _, {:"SEQUENCE OF", {:type, _, {_, _, _, type}, _, _, _}}, _, _, _} -> - # :io.format 'seqof:7: ~p [~ts]~n', [name, substituteType(lookup(bin(type))) ] + :io.format ~c'seqof:548: ~p ~p ~n', [name, type] + array(name,substituteType(lookup(bin(type))),:sequence,"top") + {:type, [], {:"SEQUENCE OF", {_, _, {_, _, _, _,_type}, _, _, _}}, _, _, _} -> + :io.format ~c'seqof:536: ~p ~n', [name] + {:type, [], {:"SEQUENCE OF", {_, _, {_, _, _, _, _,type}, _, _, _}}, _, _, _} -> + :io.format ~c'seqof:548: ~p ~p ~n', [name, type] + array(name,substituteType(lookup(bin(type))),:sequence,"top") + {:type, [], {:"SEQUENCE OF", {_, _, {_,{_,_, type, _},_} , _, _, _}}, _, _, _} -> + :io.format ~c'seqof:548: ~p ~p ~n', [name, type] array(name,substituteType(lookup(bin(type))),:sequence,"top") + {:type, [], {:"SEQUENCE OF", {_, _, :"OBJECT IDENTIFIER" , _, _, _}}, _, _, _} -> + :skip {:type, _, {:"SET OF", {:type, _, {_, _, _, type}, _, _, _}}, _, _, _} -> + :io.format ~c'seqof:548: ~p ~p ~n', [name, type] array(name,substituteType(lookup(bin(type))),:set,"top") + {:type, [], {:"SET OF", {_, _, {_, _, _, _, type}, _, _, _}}, _, _, _} -> + :io.format ~c'seqof:548: ~p ~p ~n', [name, type] + array(name,substituteType(lookup(bin(type))),:set,"top") + {:type, [], {:"SET OF", {_, _, {_, {_, _, type, _}, _}, _, _, _}}, _, _, _} -> + # array(name,substituteType(lookup(bin(type))),:set,"top") + :io.format ~c'seqof:548: ~p ~p ~n', [name, type] + array(name,substituteType(lookup(bin(type))),:set,"top") + # exit(1) {:type, _, {:"BIT STRING",_}, _, [], :no} -> setEnv(name, "BIT STRING") {:type, _, :'BIT STRING', _, [], :no} -> setEnv(name, "BIT STRING") {:type, _, :'INTEGER', _set, [], :no} -> setEnv(name, "INTEGER") @@ -548,28 +686,34 @@ public struct #{name} : Hashable, Sendable, Comparable { {:type, _, {:Externaltypereference, _, _, ext}, _set, [], _} -> setEnv(name, ext) {:type, _, {:pt, _, _}, _, [], _} -> :skip {:type, _, {:ObjectClassFieldType, _, _, _, _fields}, _, _, :no} -> :skip + {:type, _, {:SEQUENCE, _, _, _, _fields}, _, _, :no} -> :skip {:Object, _, _val} -> :skip {:Object, _, _, _} -> :skip {:ObjectSet, _, _, _, _} -> :skip - _ -> :skip end case res do - :skip -> print 'Unhandled type definition ~p: ~p~n', [name, typeDefinition] + :skip -> print ~c'Unhandled type definition ~p: ~p~n', [name, typeDefinition] _ -> :skip end end - def compileValue(_pos, name, type, value, _mod), do: print 'Unhandled value definition ~p : ~p = ~p ~n', [name, type, value] ; [] - def compileClass(_pos, name, _mod, type), do: print 'Unhandled class definition ~p : ~p~n', [name, type] ; [] - def compilePType(_pos, name, args, type), do: print 'Unhandled PType definition ~p : ~p(~p)~n', [name, type, args] ; [] + def compileValue(_pos, name, type, value, _mod), do: (print ~c'Unhandled value definition ~p : ~p = ~p ~n', [name, type, value] ; []) + def compileClass(_pos, name, _mod, type), do: (print ~c'Unhandled class definition ~p : ~p~n', [name, type] ; []) + def compilePType(_pos, name, args, type), do: (print ~c'Unhandled PType definition ~p : ~p(~p)~n', [name, type, args] ; []) def compileModule(_pos, _name, _defid, _tagdefault, _exports, _imports), do: [] def sequence(name, fields, modname, saveFlag) do :application.set_env(:asn1scg, {:type,name}, fields) + res = Enum.at(fields, 0) + {_, _ , _ ,ff, _, _ , _} = res + {kek, type } = get_sequence_and_set_of(ff, []) + decoder = emitSequenceDecoder(emitSequenceDecoderBody(name, fields), name, emitArgs(fields)) + encoder = emitSequenceEncoder(emitSequenceEncoderBody(name, fields)) + default = "#{decoder} #{encoder}" + lol = ASN1SwiftCodeGenerator.generate_swift_code(kek, default, substituteType(lookup(bin(type)))) save(saveFlag, modname, name, emitSequenceDefinition(normalizeName(name), emitFields(name, 4, fields, modname), emitCtor(emitParams(name,fields), emitCtorBody(fields)), - emitSequenceDecoder(emitSequenceDecoderBody(name, fields), name, emitArgs(fields)), - emitSequenceEncoder(emitSequenceEncoderBody(name, fields)))) + decoder, encoder, lol)) end def set(name, fields, modname, saveFlag) do @@ -609,7 +753,7 @@ public struct #{name} : Hashable, Sendable, Comparable { fileName = dir <> norm <> ".swift" :ok = :file.write_file(fileName,res) verbose = getEnv(:verbose, false) ; setEnv(:verbose, true) - print 'compiled: ~ts.swift~n', [norm] ; setEnv(:verbose, verbose) + print ~c'compiled: ~ts.swift~n', [norm] ; setEnv(:verbose, verbose) end def save(_, _, _, _), do: [] @@ -627,7 +771,7 @@ public struct #{name} : Hashable, Sendable, Comparable { def plicit([{:tag,:CONTEXT,_,{:default,:EXPLICIT},_}]), do: "Explicit" def plicit([{:tag,:CONTEXT,_,:IMPLICIT,_}]), do: "Implicit" def plicit([{:tag,:CONTEXT,_,:EXPLICIT,_}]), do: "Explicit" - def plicit(_), do: "" +# def plicit(_), do: "" def opt(:OPTIONAL), do: "?" def opt(_), do: "" @@ -661,7 +805,7 @@ case System.argv() do ["compile","-v",i] -> ASN1.setEnv(:input, i <> "/") ; ASN1.setEnv(:verbose, true) ; ASN1.compile ["compile",i,o] -> ASN1.setEnv(:input, i <> "/") ; ASN1.setEnv(:output, o <> "/") ; ASN1.compile ["compile","-v",i,o] -> ASN1.setEnv(:input, i <> "/") ; ASN1.setEnv(:output, o <> "/") ; ASN1.setEnv(:verbose, true) ; ASN1.compile - _ -> :io.format('Copyright © 2023 Namdak Tonpa.~n') - :io.format('ISO 8824 ITU/IETF X.680-690 ERP/1 ASN.1 DER Compiler, version 0.9.1.~n') - :io.format('Usage: ./asn1.ex help | compile [-v] [input [output]]~n') + _ -> :io.format(~c'Copyright © 2023 Namdak Tonpa.~n') + :io.format(~c'ISO 8824 ITU/IETF X.680-690 ERP/1 ASN.1 DER Compiler, version 0.9.1.~n') + :io.format(~c'Usage: ./asn1.ex help | compile [-v] [input [output]]~n') end diff --git a/priv/basic/CHAT.asn1 b/priv/basic/CHAT.asn1 deleted file mode 100644 index f7141b1..0000000 --- a/priv/basic/CHAT.asn1 +++ /dev/null @@ -1,248 +0,0 @@ -CHAT DEFINITIONS IMPLICIT TAGS ::= BEGIN - - P2P ::= SEQUENCE { src OCTET STRING, dst OCTET STRING } - MUC ::= SEQUENCE { room OCTET STRING } - - Feature ::= SEQUENCE { - id OCTET STRING, - key OCTET STRING, - value OCTET STRING, - group OCTET STRING } - - ServiceType ::= ENUMERATED { - synrc (0), - aws (1), - gcp (2), - azure (3) } - - ServiceStatus ::= ENUMERATED { - verified (0), - added (1), - add (2), - remove (3) } - - Service ::= SEQUENCE { - id OCTET STRING, - type ServiceType, - data OCTET STRING, - login OCTET STRING, - password OCTET STRING, - expiration INTEGER, - status ServiceStatus } - - Register ::= SEQUENCE { - nickname OCTET STRING, - csr OCTET STRING, - password OCTET STRING } - - PresenceType ::= ENUMERATED { offline (1), online (2) } - Presence ::= SEQUENCE { nickname OCTET STRING, status PresenceType } - - ContactStatus ::= ENUMERATED { - request (1), - authorization (2), - ignore (3), - intern (4), - friend (5), - last-msg (6), - ban (7), - banned (8), - deleted (9), - nonexised (10) } - - Contact ::= SEQUENCE { - nickname OCTET STRING, - avatar OCTET STRING, - names SEQUENCE OF name OCTET STRING, - phone-id OCTET STRING, - surnames SEQUENCE OF name OCTET STRING, - last-msg Message, - presence PresenceType, - update INTEGER, - created INTEGER, - settings SEQUENCE OF feature Feature, - services SEQUENCE OF service Service, - status ContactStatus } - - RosterStatus ::= ENUMERATED { - get (1), create (2), del (3), remove (4), nick (5), search (6), - contact (7), add (8), update (9), list (10), patch (11), last-msg (12) } - - Roster ::= SEQUENCE { - id OCTET STRING, - nickname OCTET STRING, - update INTEGER, - contacts SEQUENCE OF contact Contact, - topics SEQUENCE OF room Room, - status RosterStatus } - - MessageType ::= ENUMERATED { sys (1), reply (2), forward (3), read (4), edited (5) } - MessageStatus ::= ENUMERATED { async (1), delete (2), clear (3), update (4), edit (5) } - - Message ::= SEQUENCE { - id OCTET STRING, - feed-id CHOICE { p2p [0] P2P, muc [1] MUC }, - signature OCTET STRING, - from OCTET STRING, - to OCTET STRING, - created INTEGER, - files SEQUENCE OF file FileDesc, - type MessageType, - link INTEGER, - seenby OCTET STRING, - repliedby OCTET STRING, - mentioned SEQUENCE OF name OCTET STRING, - status MessageStatus } - - MemberStatus ::= ENUMERATED { admin (1), member (2), removed (3), patch (4), owner (5) } - - Member ::= SEQUENCE { - id INTEGER, - feed-id CHOICE { p2p [0] P2P, muc [1] MUC }, - feeds SEQUENCE OF feed OCTET STRING, - phone-id OCTET STRING, - avatar OCTET STRING, - names SEQUENCE OF name OCTET STRING, - surnames SEQUENCE OF name OCTET STRING, - alias OCTET STRING, - update INTEGER, - settings SEQUENCE OF feature Feature, - services SEQUENCE OF servic Service, - presence PresenceType, - status MemberStatus } - - RoomType ::= ENUMERATED { group (1), channel (2), call (3) } - RoomStatus ::= ENUMERATED { - create (1), leave (2), add (3), remove (4), removed (5), - join (6), joined (7), info (8), patch (9), get (10), - delete (11), last-msg (12), mute (13), unmute (14) } - - Room ::= SEQUENCE { - id OCTET STRING, - name OCTET STRING, - links SEQUENCE OF link OCTET STRING, - description OCTET STRING, - settings SEQUENCE OF feature Feature, - members SEQUENCE OF member Member, - admins SEQUENCE OF member Member, - data SEQUENCE OF file FileDesc, - type RoomType, - tos OCTET STRING, - tos-update INTEGER, - unread INTEGER, - mentions SEQUENCE OF contact INTEGER, - last-msg Message, - update INTEGER, - created INTEGER, - status RoomStatus } - - Server ::= SEQUENCE { service OCTET STRING, port INTEGER, host OCTET STRING } - - Profile ::= SEQUENCE { - nickname OCTET STRING, - phone OCTET STRING, - session OCTET STRING, - chats SEQUENCE OF contact Contact, - contacts SEQUENCE OF contact Contact, - keys SEQUENCE OF key OCTET STRING, - servers SEQUENCE OF server Server, - settings SEQUENCE OF feature Feature, - update INTEGER, - status INTEGER, - roster Roster } - - OS ::= ENUMERATED { apple (1), microsoft (2), google (3), ericsson (4) } - AuthType ::= ENUMERATED { reg (1), auth (2), forget (3), renew (4) } - - Ack ::= SEQUENCE { table OCTET STRING, id OCTET STRING } - - FileDesc ::= SEQUENCE { - id OCTET STRING, - mime OCTET STRING, - payload ANY, - parentid OCTET STRING, - data SEQUENCE OF feature Feature } - - Auth ::= SEQUENCE { - session OCTET STRING, - type AuthType, - sms-code OCTET STRING, - cert OCTET STRING, - challange OCTET STRING, - push OCTET STRING, - os OS, - nickname OCTET STRING, - settings SEQUENCE OF feature Feature, - token OCTET STRING, - devkey OCTET STRING, - phone OCTET STRING } - - SearchStatus ::= ENUMERATED { ok (0) } - - Criteria ::= ENUMERATED { - equal (0), not-equal (1), like (2) } - - Scope ::= ENUMERATED { - profile (0), folder (1), contact (2), - member (3), room (4), chat (5), message (6) } - - Search ::= SEQUENCE { - dn OCTET STRING, - id OCTET STRING, - field OCTET STRING, - value OCTET STRING, - criteria Criteria, - type Scope, - status SearchStatus } - - Typing ::= SEQUENCE { - session OCTET STRING, - nickname OCTET STRING, - comments SEQUENCE OF comment OCTET STRING } - - Friendship ::= ENUMERATED { - request (1), confirm (2), update (3), ignore (4), - ban (5), unban (6) } - - Friend ::= SEQUENCE { - nickname OCTET STRING, - friend OCTET STRING, - type Friendship } - - HistoryStatus ::= ENUMERATED { - updated (1), get (2), update (3), last-loaded (4), - last-msg (5), get-reply (6), double-get (7), - delete (8), image (9), video (10), file (11), - link (12), audio (13), contact (14), location (15), text (16) } - - History ::= SEQUENCE { - nickname OCTET STRING, - feed CHOICE { p2p [0] P2P, muc [1] MUC }, - size INTEGER, - entity-id INTEGER, - data SEQUENCE OF message Message, - status HistoryStatus } - - CHATProtocol ::= CHOICE { - register [0] Register, - auth [1] Auth, - feature [2] Feature, - service [3] Service, - message [4] Message, - profile [5] Profile, - room [6] Room, - member [7] Member, - search [8] Search, - file [9] FileDesc, - typing [10] Typing, - friend [11] Friend, - presence [12] Presence, - history [13] History, - roster [14] Roster } - - CHATMessage ::= SEQUENCE { - no INTEGER, - headers SEQUENCE OF header OCTET STRING, - body CHATProtocol } - -END diff --git a/priv/basic/LDAP.asn1 b/priv/basic/LDAP.asn1 deleted file mode 100644 index f02d66c..0000000 --- a/priv/basic/LDAP.asn1 +++ /dev/null @@ -1,273 +0,0 @@ -LDAP DEFINITIONS IMPLICIT TAGS ::= -BEGIN - - LDAPMessage ::= SEQUENCE { - messageID MessageID, - protocolOp CHOICE { - bindRequest BindRequest, - bindResponse BindResponse, - unbindRequest UnbindRequest, - searchRequest SearchRequest, - searchResEntry SearchResultEntry, - searchResDone SearchResultDone, - searchResRef SearchResultReference, - modifyRequest ModifyRequest, - modifyResponse ModifyResponse, - addRequest AddRequest, - addResponse AddResponse, - delRequest DelRequest, - delResponse DelResponse, - modDNRequest ModifyDNRequest, - modDNResponse ModifyDNResponse, - compareRequest CompareRequest, - compareResponse CompareResponse, - abandonRequest AbandonRequest, - extendedReq ExtendedRequest, - extendedResp ExtendedResponse, - ..., - intermediateResponse IntermediateResponse }, - controls [0] Controls OPTIONAL } - - MessageID ::= INTEGER (0 .. maxInt) - - maxInt INTEGER ::= 2147483647 -- (2^^31 - 1) -- - - LDAPString ::= OCTET STRING -- UTF-8 encoded, [ISO10646] characters - - LDAPOID ::= OCTET STRING -- Constrained to [RFC4512] - - LDAPDN ::= LDAPString -- Constrained to [RFC4514] - - RelativeLDAPDN ::= LDAPString -- Constrained to [RFC4514] - - AttributeDescription ::= LDAPString -- Constrained to [RFC4512] - - AttributeValue ::= OCTET STRING - - AttributeValueAssertion ::= SEQUENCE { - attributeDesc AttributeDescription, - assertionValue AssertionValue } - - AssertionValue ::= OCTET STRING - - PartialAttribute ::= SEQUENCE { - type AttributeDescription, - vals SET OF value AttributeValue } - - Attribute ::= PartialAttribute(WITH COMPONENTS { - ..., - vals (SIZE(1..MAX))}) - - MatchingRuleId ::= LDAPString - - - LDAPResult ::= SEQUENCE { - resultCode ENUMERATED { - success (0), - operationsError (1), - protocolError (2), - timeLimitExceeded (3), - sizeLimitExceeded (4), - compareFalse (5), - compareTrue (6), - authMethodNotSupported (7), - strongerAuthRequired (8), - -- 9 reserved -- - referral (10), - adminLimitExceeded (11), - unavailableCriticalExtension (12), - confidentialityRequired (13), - saslBindInProgress (14), - noSuchAttribute (16), - undefinedAttributeType (17), - inappropriateMatching (18), - constraintViolation (19), - attributeOrValueExists (20), - invalidAttributeSyntax (21), - -- 22-31 unused -- - noSuchObject (32), - aliasProblem (33), - invalidDNSyntax (34), - -- 35 reserved for undefined isLeaf -- - aliasDereferencingProblem (36), - -- 37-47 unused -- - inappropriateAuthentication (48), - invalidCredentials (49), - insufficientAccessRights (50), - busy (51), - unavailable (52), - unwillingToPerform (53), - loopDetect (54), - -- 55-63 unused -- - namingViolation (64), - objectClassViolation (65), - notAllowedOnNonLeaf (66), - notAllowedOnRDN (67), - entryAlreadyExists (68), - objectClassModsProhibited (69), - -- 70 reserved for CLDAP -- - affectsMultipleDSAs (71), - -- 72-79 unused -- - other (80), - ... }, - matchedDN LDAPDN, - diagnosticMessage LDAPString, - referral [3] Referral OPTIONAL } - - Referral ::= SEQUENCE SIZE (1..MAX) OF uri URI - - URI ::= LDAPString -- limited to characters permitted in - -- URIs - - Controls ::= SEQUENCE OF control Control - - Control ::= SEQUENCE { - controlType LDAPOID, - criticality BOOLEAN DEFAULT FALSE, - controlValue OCTET STRING OPTIONAL } - - - BindRequest ::= [APPLICATION 0] SEQUENCE { - version INTEGER (1 .. 127), - name LDAPDN, - authentication AuthenticationChoice } - - AuthenticationChoice ::= CHOICE { - simple [0] OCTET STRING, - -- 1 and 2 reserved - sasl [3] SaslCredentials, - ... } - - SaslCredentials ::= SEQUENCE { - mechanism LDAPString, - credentials OCTET STRING OPTIONAL } - - - BindResponse ::= [APPLICATION 1] SEQUENCE { - COMPONENTS OF LDAPResult, - serverSaslCreds [7] OCTET STRING OPTIONAL } - - - UnbindRequest ::= [APPLICATION 2] NULL - - - SearchRequest ::= [APPLICATION 3] SEQUENCE { - baseObject LDAPDN, - scope ENUMERATED { - baseObject (0), - singleLevel (1), - wholeSubtree (2), - ... }, - derefAliases ENUMERATED { - neverDerefAliases (0), - derefInSearching (1), - derefFindingBaseObj (2), - derefAlways (3) }, - sizeLimit INTEGER (0 .. maxInt), - timeLimit INTEGER (0 .. maxInt), - typesOnly BOOLEAN, - filter Filter, - attributes AttributeSelection } - - AttributeSelection ::= SEQUENCE OF selector LDAPString - -- The LDAPString is constrained to - -- in Section 4.5.1.8 - - Filter ::= CHOICE { - and [0] SET SIZE (1..MAX) OF filter Filter, - or [1] SET SIZE (1..MAX) OF filter Filter, - not [2] Filter, - equalityMatch [3] AttributeValueAssertion, - substrings [4] SubstringFilter, - greaterOrEqual [5] AttributeValueAssertion, - lessOrEqual [6] AttributeValueAssertion, - present [7] AttributeDescription, - approxMatch [8] AttributeValueAssertion, - extensibleMatch [9] MatchingRuleAssertion, - ... } - - SubstringFilter ::= SEQUENCE { - type AttributeDescription, - substrings SEQUENCE SIZE (1..MAX) OF substring CHOICE { - initial [0] AssertionValue, -- can occur at most once - any [1] AssertionValue, - final [2] AssertionValue } -- can occur at most once - } - - MatchingRuleAssertion ::= SEQUENCE { - matchingRule [1] MatchingRuleId OPTIONAL, - type [2] AttributeDescription OPTIONAL, - matchValue [3] AssertionValue, - dnAttributes [4] BOOLEAN DEFAULT FALSE } - - SearchResultEntry ::= [APPLICATION 4] SEQUENCE { - objectName LDAPDN, - attributes PartialAttributeList } - - PartialAttributeList ::= SEQUENCE OF - partialAttribute PartialAttribute - - SearchResultReference ::= [APPLICATION 19] SEQUENCE - SIZE (1..MAX) OF uri URI - - SearchResultDone ::= [APPLICATION 5] LDAPResult - - - ModifyRequest ::= [APPLICATION 6] SEQUENCE { - object LDAPDN, - changes SEQUENCE OF change SEQUENCE { - operation ENUMERATED { - add (0), - delete (1), - replace (2), - ... }, - modification PartialAttribute } } - - ModifyResponse ::= [APPLICATION 7] LDAPResult - - - AddRequest ::= [APPLICATION 8] SEQUENCE { - entry LDAPDN, - attributes AttributeList } - - AttributeList ::= SEQUENCE OF attribute Attribute - - AddResponse ::= [APPLICATION 9] LDAPResult - -DelRequest ::= [APPLICATION 10] LDAPDN - - DelResponse ::= [APPLICATION 11] LDAPResult - - ModifyDNRequest ::= [APPLICATION 12] SEQUENCE { - entry LDAPDN, - newrdn RelativeLDAPDN, - deleteoldrdn BOOLEAN, - newSuperior [0] LDAPDN OPTIONAL } - - ModifyDNResponse ::= [APPLICATION 13] LDAPResult - -CompareRequest ::= [APPLICATION 14] SEQUENCE { - entry LDAPDN, - ava AttributeValueAssertion } - - CompareResponse ::= [APPLICATION 15] LDAPResult - - AbandonRequest ::= [APPLICATION 16] MessageID - - ExtendedRequest ::= [APPLICATION 23] SEQUENCE { - requestName [0] LDAPOID, - requestValue [1] OCTET STRING OPTIONAL } - - - ExtendedResponse ::= [APPLICATION 24] SEQUENCE { - COMPONENTS OF LDAPResult, - responseName [10] LDAPOID OPTIONAL, - responseValue [11] OCTET STRING OPTIONAL } - - IntermediateResponse ::= [APPLICATION 25] SEQUENCE { - responseName [0] LDAPOID OPTIONAL, - responseValue [1] OCTET STRING OPTIONAL } - - - -END diff --git a/priv/basic/List.asn1 b/priv/basic/List.asn1 index c6a549f..ad02b81 100644 --- a/priv/basic/List.asn1 +++ b/priv/basic/List.asn1 @@ -1,79 +1,12 @@ List DEFINITIONS IMPLICIT TAGS ::= BEGIN - Real ::= SEQUENCE { - mantissa INTEGER, - base INTEGER (2|10), - exponent INTEGER - } - - X ::= SET { - a INTEGER, - b SET OF OCTET STRING, - d Real - } - V ::= SEQUENCE { - a [1] IMPLICIT SET OF INTEGER (0..7), - b [2] EXPLICIT SET OF INTEGER (0..7), - c [3] IMPLICIT INTEGER (0..7), - d [4] EXPLICIT INTEGER (0..7), - e [5] IMPLICIT BOOLEAN, - f [6] EXPLICIT BOOLEAN, - g [7] IMPLICIT SET OF INTEGER (0..7) OPTIONAL, - h [8] EXPLICIT SET OF INTEGER (0..7) OPTIONAL, - i [9] IMPLICIT INTEGER (0..7) OPTIONAL, - j [0] EXPLICIT INTEGER (0..7) OPTIONAL, - k OCTET STRING OPTIONAL, - l BOOLEAN OPTIONAL - } - - V2 ::= SEQUENCE { - a SET OF INTEGER (0..7), - b SET OF INTEGER (0..7), - c INTEGER (0..7), - d INTEGER (0..7), - e BOOLEAN, - f BOOLEAN, - g SET OF INTEGER (0..7) OPTIONAL, - h INTEGER (0..7), - i INTEGER (0..7), - j OCTET STRING OPTIONAL, - k BOOLEAN OPTIONAL - } K ::= SEQUENCE { - version INTEGER { v1(1) }, - x INTEGER (0..3), - y SEQUENCE { d1 BOOLEAN, - d2 BOOLEAN, - d3 INTEGER, - d4 INTEGER } - --- w SET OF --- SEQUENCE OF --- SET OF --- SEQUENCE OF INTEGER --- - --- SEQUENCE OF --- SET OF SEQUENCE OF --- SET OF SEQUENCE OF INTEGER - } - - Versioning ::= INTEGER { v1(0) } - - A ::= CHOICE { - v [0] V, - list-x [1] List, - o [2] SET OF OCTET STRING, - s [3] SEQUENCE OF OCTET STRING - } - List ::= SEQUENCE { - data OCTET STRING, - next CHOICE { linked-list List, - end NULL, - ss [1] SET OF OCTET STRING } + w SET OF + SEQUENCE OF + SEQUENCE OF BOOLEAN } END