@@ -189,6 +189,45 @@ pub struct EntryPoint {
189189 /// The signature of the function to analyse.
190190 #[ prost( string, tag="3" ) ]
191191 pub signature : :: prost:: alloc:: string:: String ,
192+ /// The id of the component that uses this entrypoint.
193+ #[ prost( string, tag="4" ) ]
194+ pub component_id : :: prost:: alloc:: string:: String ,
195+ }
196+ /// Parameters to trace the entrypoint
197+ #[ allow( clippy:: derive_partial_eq_without_eq) ]
198+ #[ derive( Clone , PartialEq , :: prost:: Message ) ]
199+ pub struct EntryPointParams {
200+ /// The entrypoint id.
201+ #[ prost( string, tag="1" ) ]
202+ pub entrypoint_id : :: prost:: alloc:: string:: String ,
203+ /// \[optional\] The component that uses these entrypoint parameters. Currently used for debugging purposes only.
204+ #[ prost( string, tag="2" ) ]
205+ pub component_id : :: prost:: alloc:: string:: String ,
206+ /// The strategy and its corresponding data
207+ #[ prost( oneof="entry_point_params::TraceData" , tags="3" ) ]
208+ pub trace_data : :: core:: option:: Option < entry_point_params:: TraceData > ,
209+ }
210+ /// Nested message and enum types in `EntryPointParams`.
211+ pub mod entry_point_params {
212+ /// The strategy and its corresponding data
213+ #[ allow( clippy:: derive_partial_eq_without_eq) ]
214+ #[ derive( Clone , PartialEq , :: prost:: Oneof ) ]
215+ pub enum TraceData {
216+ /// Add more strategies here
217+ #[ prost( message, tag="3" ) ]
218+ Rpc ( super :: RpcTraceData ) ,
219+ }
220+ }
221+ /// RPC tracing strategy with its data
222+ #[ allow( clippy:: derive_partial_eq_without_eq) ]
223+ #[ derive( Clone , PartialEq , :: prost:: Message ) ]
224+ pub struct RpcTraceData {
225+ /// \[optional\] The caller to be used for the trace. If none is provided a chain default will be used.
226+ #[ prost( bytes="vec" , tag="1" ) ]
227+ pub caller : :: prost:: alloc:: vec:: Vec < u8 > ,
228+ /// The calldata to be used for the trace
229+ #[ prost( bytes="vec" , tag="2" ) ]
230+ pub calldata : :: prost:: alloc:: vec:: Vec < u8 > ,
192231}
193232/// A contract and associated storage changes
194233#[ allow( clippy:: derive_partial_eq_without_eq) ]
@@ -227,6 +266,9 @@ pub struct TransactionChanges {
227266 /// An array of newly added entrypoints. Used for DCI enabled protocols.
228267 #[ prost( message, repeated, tag="6" ) ]
229268 pub entrypoints : :: prost:: alloc:: vec:: Vec < EntryPoint > ,
269+ /// An array of entrypoint tracing parameteres. Used for DCI enabled protocols.
270+ #[ prost( message, repeated, tag="7" ) ]
271+ pub entrypoint_params : :: prost:: alloc:: vec:: Vec < EntryPointParams > ,
230272}
231273/// A set of storage changes aggregated by transaction.
232274#[ allow( clippy:: derive_partial_eq_without_eq) ]
0 commit comments