x.encoding.asn1: cleanup code and comments (#22847)

This commit is contained in:
blackshirt 2024-11-14 00:38:27 +07:00 committed by GitHub
parent 62bdf990d0
commit 897ec51480
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
24 changed files with 169 additions and 76 deletions

View file

@ -5,29 +5,23 @@ module asn1
// ANY DEFINED BY
//
@[noinit]
pub struct Any {
mut:
marker string = 'any'
pub struct AnyDefinedBy {
pub:
params Element
// default to null element
params Element = Null{}
}
// Any.new creates a new ANY DEFINED BY element with marker as an identifier.
pub fn Any.new(marker string, params Element) Any {
return Any{marker, params}
// AnyDefinedBy.new creates a new ANY DEFINED BY element.
pub fn AnyDefinedBy.new(params Element) AnyDefinedBy {
return AnyDefinedBy{params}
}
// tag returns the underlying tag of ANY DEFINED BY element.
pub fn (a Any) tag() Tag {
pub fn (a AnyDefinedBy) tag() Tag {
return a.params.tag()
}
// payload returns the underlying payload of ANY DEFINED BY element.
pub fn (a Any) payload() ![]u8 {
pub fn (a AnyDefinedBy) payload() ![]u8 {
return a.params.payload()!
}
fn (a Any) params() Element {
return a.params
}