o que é um contexto de uma sub-rotina?

2

Em bash , existe um comando interno do shell denominado caller cuja função é descrita como segue pelo comando help :

Return the context of the current subroutine call

Mas, qual é o contexto de uma chamada de sub-rotina? Você poderia explicar isso para não-programadores e o que é bom saber?

    
por sharkant 24.05.2017 / 20:47

1 resposta

3

Obtido diretamente da página bash man:

caller ... displays the line number and source filename of the  current subroutine call.

Em termos simples, ele diz de onde você veio. Pense nisso como a fada tomar onde duas crianças estão explorando a floresta e deixando migalhas de pão ao longo do caminho que eles tomam. O caller builtin os aponta no último breadcrumb que eles soltaram para que eles possam voltar a ele. (Ok, as crianças são, afinal, meio estúpidas). O uso repetido dessa ajuda interna leva você de volta ao comando que você executou, que acabou com N níveis de profundidade nas chamadas de função.

É basicamente uma gravação das respostas para "em que função eu estava antes de chegar a esta?" em todos os níveis de chamada de função.

    
por 24.05.2017 / 20:56