///|
pub(all) struct InputChange {
visit_id : String
lesion_id : String?
field : String
before : String?
after : String?
} derive(Debug, Eq)
///|
pub(all) struct VisitImpact {
visit_id : String
before : VisitAssessment?
after : VisitAssessment?
} derive(Debug, Eq)
///|
pub(all) struct TrackRevision {
study_id : String
changes : Array[InputChange]
impacts : Array[VisitImpact]
} derive(Debug, Eq)
///|
pub extend InputChange with @debug.Debug::{to_repr}
///|
pub extend InputChange with Eq::{equal, not_equal}
///|
pub extend VisitImpact with @debug.Debug::{to_repr}
///|
pub extend VisitImpact with Eq::{equal, not_equal}
///|
pub extend TrackRevision with @debug.Debug::{to_repr}
///|
pub extend TrackRevision with Eq::{equal, not_equal}