Uma ideia de adicionar uma função "rodarAntes". A função pegaria todas as funções do arquivo e colocaria dentro dela "por baixo dos panos" e o código que fosse escrito dentro de "rodarAntes" pelo programador, rodaria antes de quando outra função fosse chamada.
Exemplo: O código está sendo executado e me deparei com a primeira função "executarPrimeiraFuncao()", antes dela o código rodaria a função "rodarAntes()" e então depois executaria a "executarPrimeiraFuncao()", segue o código, no meio do caminho a função "executarSegundaFuncao()" então executaria novamente o "rodarAntes()" e depois a função. Claro que para isso tem que se fazer toda lógica, ao contrário do código demonstrado abaixo que fiz só para demonstrar como seria mais ou menos essa ideia.

Uma ideia de adicionar uma função "rodarAntes". A função pegaria todas as funções do arquivo e colocaria dentro dela "por baixo dos panos" e o código que fosse escrito dentro de "rodarAntes" pelo programador, rodaria antes de quando outra função fosse chamada.
Exemplo: O código está sendo executado e me deparei com a primeira função "executarPrimeiraFuncao()", antes dela o código rodaria a função "rodarAntes()" e então depois executaria a "executarPrimeiraFuncao()", segue o código, no meio do caminho a função "executarSegundaFuncao()" então executaria novamente o "rodarAntes()" e depois a função. Claro que para isso tem que se fazer toda lógica, ao contrário do código demonstrado abaixo que fiz só para demonstrar como seria mais ou menos essa ideia.