1+ use std:: fmt:: { Debug , Formatter } ;
2+
13use libipt_sys:: {
24 pt_packet,
35 pt_packet_type_ppt_cbr as PT_PACKET_TYPE_PPT_CBR ,
@@ -139,6 +141,40 @@ pub enum Packet<T> {
139141 Ptw ( ptw:: Ptw )
140142}
141143
144+ impl < T > Debug for Packet < T > {
145+ fn fmt ( & self , f : & mut Formatter ) -> std:: fmt:: Result {
146+ match self {
147+ Self :: Invalid ( pack) => f. write_fmt ( format_args ! ( "Invalid({:?})" , pack) ) ,
148+ Self :: Psbend ( pack) => f. write_fmt ( format_args ! ( "Psbend({:?})" , pack) ) ,
149+ Self :: Stop ( pack) => f. write_fmt ( format_args ! ( "Stop({:?})" , pack) ) ,
150+ Self :: Pad ( pack) => f. write_fmt ( format_args ! ( "Pad({:?})" , pack) ) ,
151+ Self :: Psb ( pack) => f. write_fmt ( format_args ! ( "Psb({:?})" , pack) ) ,
152+ Self :: Ovf ( pack) => f. write_fmt ( format_args ! ( "Ovf({:?})" , pack) ) ,
153+ Self :: Unknown ( _) => f. write_str ( "Unknown" ) ,
154+ Self :: Fup ( pack) => f. write_fmt ( format_args ! ( "Fup({:?})" , pack) ) ,
155+ Self :: Tip ( pack) => f. write_fmt ( format_args ! ( "Tip({:?})" , pack) ) ,
156+ Self :: TipPge ( pack) => f. write_fmt ( format_args ! ( "TipPge({:?})" , pack) ) ,
157+ Self :: TipPgd ( pack) => f. write_fmt ( format_args ! ( "TipPgd({:?})" , pack) ) ,
158+ Self :: Tnt8 ( pack) => f. write_fmt ( format_args ! ( "Tnt8({:?})" , pack) ) ,
159+ Self :: Tnt64 ( pack) => f. write_fmt ( format_args ! ( "Tnt64({:?})" , pack) ) ,
160+ Self :: Mode ( pack) => f. write_fmt ( format_args ! ( "Mode({:?})" , pack) ) ,
161+ Self :: Pip ( pack) => f. write_fmt ( format_args ! ( "Pip({:?})" , pack) ) ,
162+ Self :: Vmcs ( pack) => f. write_fmt ( format_args ! ( "Vmcs({:?})" , pack) ) ,
163+ Self :: Cbr ( pack) => f. write_fmt ( format_args ! ( "Cbr({:?})" , pack) ) ,
164+ Self :: Tsc ( pack) => f. write_fmt ( format_args ! ( "Tsc({:?})" , pack) ) ,
165+ Self :: Tma ( pack) => f. write_fmt ( format_args ! ( "Tma({:?})" , pack) ) ,
166+ Self :: Mtc ( pack) => f. write_fmt ( format_args ! ( "Mtc({:?})" , pack) ) ,
167+ Self :: Cyc ( pack) => f. write_fmt ( format_args ! ( "Cyc({:?})" , pack) ) ,
168+ Self :: Mnt ( pack) => f. write_fmt ( format_args ! ( "Mnt({:?})" , pack) ) ,
169+ Self :: Exstop ( pack) => f. write_fmt ( format_args ! ( "Exstop({:?})" , pack) ) ,
170+ Self :: Mwait ( pack) => f. write_fmt ( format_args ! ( "Mwait({:?})" , pack) ) ,
171+ Self :: Pwre ( pack) => f. write_fmt ( format_args ! ( "Pwre({:?})" , pack) ) ,
172+ Self :: Pwrx ( pack) => f. write_fmt ( format_args ! ( "Pwrx({:?})" , pack) ) ,
173+ Self :: Ptw ( pack) => f. write_fmt ( format_args ! ( "Ptw({:?})" , pack) ) ,
174+ }
175+ }
176+ }
177+
142178impl < T > From < pt_packet > for Packet < T > {
143179 fn from ( pkt : pt_packet ) -> Self {
144180 unsafe {
@@ -174,4 +210,4 @@ impl<T> From<pt_packet> for Packet<T> {
174210 }
175211 }
176212 }
177- }
213+ }
0 commit comments