@@ -154,20 +154,21 @@ class AsyncLogicEngine {
154154 const { above = [ ] } = options
155155
156156 // OPTIMIZER BLOCK //
157- if ( this . missesSinceSeen > 500 ) {
158- this . disableInterpretedOptimization = true
159- this . missesSinceSeen = 0
160- }
161-
162- if ( ! this . disableInterpretedOptimization && typeof logic === 'object' && logic && ! this . optimizedMap . has ( logic ) ) {
163- this . optimizedMap . set ( logic , optimize ( logic , this , above ) )
164- this . missesSinceSeen ++
165- return typeof this . optimizedMap . get ( logic ) === 'function' ? this . optimizedMap . get ( logic ) ( data , above ) : this . optimizedMap . get ( logic )
166- }
167-
168- if ( ! this . disableInterpretedOptimization && logic && typeof logic === 'object' && this . optimizedMap . get ( logic ) ) {
169- this . missesSinceSeen = 0
170- return typeof this . optimizedMap . get ( logic ) === 'function' ? this . optimizedMap . get ( logic ) ( data , above ) : this . optimizedMap . get ( logic )
157+ if ( ! this . disableInterpretedOptimization && typeof logic === 'object' && logic ) {
158+ if ( this . missesSinceSeen > 500 ) {
159+ this . disableInterpretedOptimization = true
160+ this . missesSinceSeen = 0
161+ }
162+ if ( ! this . optimizedMap . has ( logic ) ) {
163+ this . optimizedMap . set ( logic , optimize ( logic , this , above ) )
164+ this . missesSinceSeen ++
165+ const grab = this . optimizedMap . get ( logic )
166+ return typeof grab === 'function' ? grab ( data , above ) : grab
167+ } else {
168+ this . missesSinceSeen = 0
169+ const grab = this . optimizedMap . get ( logic )
170+ return typeof grab === 'function' ? grab ( data , above ) : grab
171+ }
171172 }
172173 // END OPTIMIZER BLOCK //
173174
0 commit comments