Sto ancora cercando di analizzare i plugin. Stavo cercando di sovrascrivere TopicsController nei miei studi, ho esplorato il repository del codice di Discourse e ho notato reloadable_patch.
Poi ho cercato reloadable_patch in Discourse e ho ottenuto 12 risultati nel codice:
Quindi ho deciso di fare una ricerca più ampia per capire questa affascinante “metodo/gancio (?)”. Così ho:
Cercato su tutto GitHub:
– Tutti i risultati sembrano essere correlati a Discourse (plugin)
Cercato sul web:
– Tutti i risultati sembrano essere correlati a Discourse (plugin)
Cercato su Meta:
– Ho ottenuto qualche risultato, ma nulla che spiegasse reloadable_patch (interni) in dettaglio.
Successivamente, ho cercato di nuovo nel repository di Discourse e non sono riuscito a trovare (deve essere perché non sono esperto) la “definizione” di cosa faccia esattamente reloadable_patch (o dove sia definito).
A un principiante di Ruby come me, sembra essere un “metodo”, per mancanza di una parola migliore, o un “gancio” che facilita la sovrascrittura delle classi di Discourse; ma non sono riuscito a trovare il codice Ruby che ne definisce il funzionamento interno.
Qualcuno potrebbe spiegarmelo o indicarmi il “codice definitorio” che spiega cosa fa reloadable_patch dal punto di vista degli interni di Ruby?
Non so perché il metodo def non sia apparso quando ho cercato nel repository con quella parola chiave; ma è esattamente quello che stavo cercando!
Grazie ancora!!
Modifica: Ho capito cosa è successo. Non ho esplorato abbastanza a fondo il file instance.rb e mi sono fermato in cima; ma nel file c’erano 23 voci per reloadable_patch e il def si trovava in fondo.
Una ricerca con “def reloadable_patch” tra virgolette l’ha trovato (proprio ora)
Sto iniziando a diventare dipendente da Ruby, esplorando ogni angolo e ogni fessura.