We do AST parsing during collection. Assuming the code didn't change, we only need to pay that cost once. Not sure how easy that is to check, e.g. by checking the compiled bytecode. If it is, we can maybe create a private on-disk persistent cache and then bypass AST parsing if we've already done it.