@@ -81,6 +81,26 @@ pub(crate) struct FunctionExpression<'a> {
8181
8282bindable_handle ! ( FunctionExpression ) ;
8383
84+ impl HeapMarkAndSweep for FunctionExpression < ' static > {
85+ fn mark_values ( & self , queues : & mut WorkQueues ) {
86+ let Self {
87+ expression : _,
88+ identifier : _,
89+ compiled_bytecode,
90+ } = self ;
91+ compiled_bytecode. mark_values ( queues) ;
92+ }
93+
94+ fn sweep_values ( & mut self , compactions : & CompactionLists ) {
95+ let Self {
96+ expression : _,
97+ identifier : _,
98+ compiled_bytecode,
99+ } = self ;
100+ compiled_bytecode. sweep_values ( compactions) ;
101+ }
102+ }
103+
84104#[ derive( Debug , Clone ) ]
85105pub ( crate ) struct ArrowFunctionExpression {
86106 pub ( crate ) expression : SendableRef < ast:: ArrowFunctionExpression < ' static > > ,
@@ -504,16 +524,15 @@ impl HeapMarkAndSweep for ExecutableHeapData<'static> {
504524 caches,
505525 constants,
506526 shapes,
507- function_expressions : _ ,
527+ function_expressions,
508528 arrow_function_expressions : _,
509529 class_initializer_bytecodes,
510530 } = self ;
511531 constants. mark_values ( queues) ;
512532 caches. mark_values ( queues) ;
513533 shapes. mark_values ( queues) ;
514- for ele in class_initializer_bytecodes {
515- ele. 0 . mark_values ( queues) ;
516- }
534+ function_expressions. mark_values ( queues) ;
535+ class_initializer_bytecodes. mark_values ( queues) ;
517536 }
518537
519538 fn sweep_values ( & mut self , compactions : & CompactionLists ) {
@@ -522,16 +541,15 @@ impl HeapMarkAndSweep for ExecutableHeapData<'static> {
522541 caches,
523542 constants,
524543 shapes,
525- function_expressions : _ ,
544+ function_expressions,
526545 arrow_function_expressions : _,
527546 class_initializer_bytecodes,
528547 } = self ;
529548 constants. sweep_values ( compactions) ;
530549 caches. sweep_values ( compactions) ;
531550 shapes. sweep_values ( compactions) ;
532- for ele in class_initializer_bytecodes {
533- ele. 0 . sweep_values ( compactions) ;
534- }
551+ function_expressions. sweep_values ( compactions) ;
552+ class_initializer_bytecodes. sweep_values ( compactions) ;
535553 }
536554}
537555
0 commit comments