File tree Expand file tree Collapse file tree 1 file changed +25
-18
lines changed Expand file tree Collapse file tree 1 file changed +25
-18
lines changed Original file line number Diff line number Diff line change @@ -354,24 +354,31 @@ async fn evaluate_op_scope(
354
354
let mut input_values = Vec :: with_capacity ( op. inputs . len ( ) ) ;
355
355
input_values
356
356
. extend ( assemble_input_values ( & op. inputs , scoped_entries) . collect :: < Vec < _ > > ( ) ) ;
357
- let output_value_cell = memory. get_cache_entry (
358
- || {
359
- Ok ( op
360
- . function_exec_info
361
- . fingerprinter
362
- . clone ( )
363
- . with ( & input_values) ?
364
- . into_fingerprint ( ) )
365
- } ,
366
- & op. function_exec_info . output_type ,
367
- /*ttl=*/ None ,
368
- ) ?;
369
- let output_value = evaluate_with_cell ( output_value_cell. as_ref ( ) , move || {
370
- op. executor . evaluate ( input_values)
371
- } )
372
- . await
373
- . with_context ( || format ! ( "Evaluating Transform op `{}`" , op. name, ) ) ?;
374
- head_scope. define_field ( & op. output , & output_value) ?;
357
+ if op. function_exec_info . enable_cache {
358
+ let output_value_cell = memory. get_cache_entry (
359
+ || {
360
+ Ok ( op
361
+ . function_exec_info
362
+ . fingerprinter
363
+ . clone ( )
364
+ . with ( & input_values) ?
365
+ . into_fingerprint ( ) )
366
+ } ,
367
+ & op. function_exec_info . output_type ,
368
+ /*ttl=*/ None ,
369
+ ) ?;
370
+ evaluate_with_cell ( output_value_cell. as_ref ( ) , move || {
371
+ op. executor . evaluate ( input_values)
372
+ } )
373
+ . await
374
+ . and_then ( |v| head_scope. define_field ( & op. output , & v) )
375
+ } else {
376
+ op. executor
377
+ . evaluate ( input_values)
378
+ . await
379
+ . and_then ( |v| head_scope. define_field ( & op. output , & v) )
380
+ }
381
+ . with_context ( || format ! ( "Evaluating Transform op `{}`" , op. name, ) ) ?
375
382
}
376
383
377
384
AnalyzedReactiveOp :: ForEach ( op) => {
You can’t perform that action at this time.
0 commit comments