///|
/// One offline IANA HTTP Problem Types registration.
pub struct ProblemTypeRecord {
type_uri : String
title : String
recommended_status : Int?
reference : String
} derive(Eq, Debug)
///|
pub fn problem_type_record(
type_uri : String,
title : String,
recommended_status : Int?,
reference : String,
) -> ProblemTypeRecord {
{ type_uri, title, recommended_status, reference }
}
///|
pub fn ProblemTypeRecord::type_uri(self : ProblemTypeRecord) -> String {
self.type_uri
}
///|
pub fn ProblemTypeRecord::title(self : ProblemTypeRecord) -> String {
self.title
}
///|
pub fn ProblemTypeRecord::recommended_status(self : ProblemTypeRecord) -> Int? {
self.recommended_status
}
///|
pub fn ProblemTypeRecord::reference(self : ProblemTypeRecord) -> String {
self.reference
}
///|
pub fn registered_problem_types() -> Array[ProblemTypeRecord] {
generated_problem_type_data()
}
///|
pub fn lookup_problem_type(uri : String) -> ProblemTypeRecord? {
for record in generated_problem_type_data() {
if record.type_uri() == uri {
return Some(record)
}
}
None
}
///|
pub fn is_registered_problem_type(uri : String) -> Bool {
lookup_problem_type(uri) is Some(_)
}
///|
pub fn registry_snapshot_sha256() -> String {
"5ad50e00f53a1d444fdf82c4d72d022621cd85c277dbaae5f9438874711985e9"
}
///|
pub fn registry_snapshot_date() -> String {
"2026-06-26"
}