@@ -107,38 +107,33 @@ fn bench_arithmetic_transform(c: &mut Criterion) {
107107 let msg = create_test_message ( ) ;
108108
109109 c. bench_function ( "transform/arithmetic_add" , |b| {
110- let transform = ArithmeticTransform :: new_with_paths (
111- ArithmeticOp :: Add ,
112- "/order/price" ,
113- "/order/tax"
114- ) . unwrap ( ) ;
110+ let transform =
111+ ArithmeticTransform :: new_with_paths ( ArithmeticOp :: Add , "/order/price" , "/order/tax" )
112+ . unwrap ( ) ;
115113 b. iter ( || transform. transform ( black_box ( msg. clone ( ) ) ) )
116114 } ) ;
117115
118116 c. bench_function ( "transform/arithmetic_sub" , |b| {
119117 let transform = ArithmeticTransform :: new_with_paths (
120118 ArithmeticOp :: Sub ,
121119 "/order/price" ,
122- "/order/discount"
123- ) . unwrap ( ) ;
120+ "/order/discount" ,
121+ )
122+ . unwrap ( ) ;
124123 b. iter ( || transform. transform ( black_box ( msg. clone ( ) ) ) )
125124 } ) ;
126125
127126 c. bench_function ( "transform/arithmetic_mul_constant" , |b| {
128- let transform = ArithmeticTransform :: new_with_constant (
129- ArithmeticOp :: Mul ,
130- "/order/price" ,
131- 1.08
132- ) . unwrap ( ) ;
127+ let transform =
128+ ArithmeticTransform :: new_with_constant ( ArithmeticOp :: Mul , "/order/price" , 1.08 )
129+ . unwrap ( ) ;
133130 b. iter ( || transform. transform ( black_box ( msg. clone ( ) ) ) )
134131 } ) ;
135132
136133 c. bench_function ( "transform/arithmetic_div" , |b| {
137- let transform = ArithmeticTransform :: new_with_paths (
138- ArithmeticOp :: Div ,
139- "/order/price" ,
140- "/order/items"
141- ) . unwrap ( ) ;
134+ let transform =
135+ ArithmeticTransform :: new_with_paths ( ArithmeticOp :: Div , "/order/price" , "/order/items" )
136+ . unwrap ( ) ;
142137 b. iter ( || transform. transform ( black_box ( msg. clone ( ) ) ) )
143138 } ) ;
144139}
@@ -149,7 +144,11 @@ fn bench_transform_parser(c: &mut Criterion) {
149144 } ) ;
150145
151146 c. bench_function ( "parser/construct_transform" , |b| {
152- b. iter ( || parse_transform ( black_box ( "CONSTRUCT:id=/message/confId:site=/message/siteId" ) ) )
147+ b. iter ( || {
148+ parse_transform ( black_box (
149+ "CONSTRUCT:id=/message/confId:site=/message/siteId" ,
150+ ) )
151+ } )
153152 } ) ;
154153
155154 c. bench_function ( "parser/array_map_transform" , |b| {
@@ -167,43 +166,53 @@ fn bench_transform_throughput(c: &mut Criterion) {
167166 for msg_count in [ 100 , 1000 , 10000 ] . iter ( ) {
168167 group. throughput ( Throughput :: Elements ( * msg_count as u64 ) ) ;
169168
170- group. bench_with_input ( BenchmarkId :: new ( "simple" , msg_count) , msg_count, |b, & count| {
171- let transform = JsonPathTransform :: new ( "/message/confId" ) . unwrap ( ) ;
172- let msg = create_test_message ( ) ;
173- b. iter ( || {
174- for _ in 0 ..count {
175- black_box ( transform. transform ( black_box ( msg. clone ( ) ) ) . unwrap ( ) ) ;
176- }
177- } ) ;
178- } ) ;
179-
180- group. bench_with_input ( BenchmarkId :: new ( "construct" , msg_count) , msg_count, |b, & count| {
181- let mut fields = HashMap :: new ( ) ;
182- fields. insert ( "id" . to_string ( ) , "/message/confId" . to_string ( ) ) ;
183- fields. insert ( "site" . to_string ( ) , "/message/siteId" . to_string ( ) ) ;
184- fields. insert ( "status" . to_string ( ) , "/message/status" . to_string ( ) ) ;
185- let transform = ObjectConstructTransform :: new ( fields) . unwrap ( ) ;
186- let msg = create_test_message ( ) ;
187- b. iter ( || {
188- for _ in 0 ..count {
189- black_box ( transform. transform ( black_box ( msg. clone ( ) ) ) . unwrap ( ) ) ;
190- }
191- } ) ;
192- } ) ;
193-
194- group. bench_with_input ( BenchmarkId :: new ( "arithmetic" , msg_count) , msg_count, |b, & count| {
195- let transform = ArithmeticTransform :: new_with_constant (
196- ArithmeticOp :: Mul ,
197- "/order/price" ,
198- 1.08
199- ) . unwrap ( ) ;
200- let msg = create_test_message ( ) ;
201- b. iter ( || {
202- for _ in 0 ..count {
203- black_box ( transform. transform ( black_box ( msg. clone ( ) ) ) . unwrap ( ) ) ;
204- }
205- } ) ;
206- } ) ;
169+ group. bench_with_input (
170+ BenchmarkId :: new ( "simple" , msg_count) ,
171+ msg_count,
172+ |b, & count| {
173+ let transform = JsonPathTransform :: new ( "/message/confId" ) . unwrap ( ) ;
174+ let msg = create_test_message ( ) ;
175+ b. iter ( || {
176+ for _ in 0 ..count {
177+ black_box ( transform. transform ( black_box ( msg. clone ( ) ) ) . unwrap ( ) ) ;
178+ }
179+ } ) ;
180+ } ,
181+ ) ;
182+
183+ group. bench_with_input (
184+ BenchmarkId :: new ( "construct" , msg_count) ,
185+ msg_count,
186+ |b, & count| {
187+ let mut fields = HashMap :: new ( ) ;
188+ fields. insert ( "id" . to_string ( ) , "/message/confId" . to_string ( ) ) ;
189+ fields. insert ( "site" . to_string ( ) , "/message/siteId" . to_string ( ) ) ;
190+ fields. insert ( "status" . to_string ( ) , "/message/status" . to_string ( ) ) ;
191+ let transform = ObjectConstructTransform :: new ( fields) . unwrap ( ) ;
192+ let msg = create_test_message ( ) ;
193+ b. iter ( || {
194+ for _ in 0 ..count {
195+ black_box ( transform. transform ( black_box ( msg. clone ( ) ) ) . unwrap ( ) ) ;
196+ }
197+ } ) ;
198+ } ,
199+ ) ;
200+
201+ group. bench_with_input (
202+ BenchmarkId :: new ( "arithmetic" , msg_count) ,
203+ msg_count,
204+ |b, & count| {
205+ let transform =
206+ ArithmeticTransform :: new_with_constant ( ArithmeticOp :: Mul , "/order/price" , 1.08 )
207+ . unwrap ( ) ;
208+ let msg = create_test_message ( ) ;
209+ b. iter ( || {
210+ for _ in 0 ..count {
211+ black_box ( transform. transform ( black_box ( msg. clone ( ) ) ) . unwrap ( ) ) ;
212+ }
213+ } ) ;
214+ } ,
215+ ) ;
207216 }
208217
209218 group. finish ( ) ;
0 commit comments