C'è questo Enumerator#feed method, che ho scoperto per caso. Essa è definita come:La magia del feed n. Enumeratore
mangimi obj → nil
Imposta il valore da restituire il successivo rendimento interno e. Se il valore non è impostato, il rendimento ritorna nullo. Questo valore viene cancellato dopo essere stato ceduto.
ho studiato gli esempi e ho pensato »Yay«, questo dovrebbe funzionare utilizzando feed
:
enum = ['cat', 'bird', 'goat'].each # creates an enumerator
enum.next #=> 'cat'
enum.feed 'dog'
enum.next #=> returns 'bird', but I expected 'dog'
Ma non funziona. Presumo, non restituisce 'dog'
, perché each
non utilizza yield
internamente.
Il fatto è che non ho potuto dedurre alcun caso di utilizzo del mondo reale dall'esempio fornito nella documentazione, Google non è un amico con questa domanda e (da quello che ho provato) feed
sembra non funzionare bene con gli altri metodi Enumerator
/Enumeration
.
Potete, per favore, darmi un buon esempio che spiega feed
, quindi posso capirlo?
Si prega di includere un contesto nel post. Le risposte su StackOverflow non devono essere "[poco più di un collegamento a un sito esterno] (http://stackoverflow.com/faq#deletion)" – Gareth
@Gareth Va bene? o più contesto devo aggiungere? Penso che quello che ho scritto lì, riguarda tutto il "enum # feed". –
@Priti, mi piace molto l'esempio 'map!' - grazie. Spero ancora di ottenere più risposte con più esempi. Attualmente, 'feed' sembra essere abbastanza inutile in" il mondo reale ". – tessi