Appel
Functions.cache.getRetryCached(cache, func, ...)
Enregistrez-la comme dépendance nommée Functions.cache.getRetryCached (accepter la complétion le fait pour vous), puis appelez-la sous ce nom.
Également acceptée sous l'ancien espace de noms utils.
Ce qu'elle fait
Met en cache une observation dès qu'elle renvoie une valeur non nil ; réessaie les observations dont tout le tuple renvoyé est nil. Utilise les mêmes clés d'arguments exactes que getCached.
Arguments
| Nom | Type | Ce qu'elle fait |
|---|---|---|
cache | table | nil | Cache d'évaluation, ou nil pour contourner la mise en cache. |
func | function | string | Fonction, ou nom de fonction globale, à appeler. |
... | any | Arguments transmis tels quels à la fonction observée. |
Retours
| 1 | ... | Tous les résultats d'origine, en conservant les positions nil et le nombre de valeurs renvoyées. |
|---|
Éditions
Les fonctions utilitaires intégrées sont enregistrées sur toutes les éditions. Ce qui diffère, c'est l'API du jeu qu'elles lisent ; quand l'une manque, la fonction utilitaire se rabat sur une alternative ou renvoie nil avec une raison.
Elle ne lit directement aucune API du jeu.
Exemple
local name = Functions.cache.getRetryCached(cache, GetSpellInfo, 774)
return name ~= nilDépendances
getCachedInternal→utils.getCachedInternal
Source
Functions/cache.lua, ligne 173. En lecture seule dans le jeu ; Dupliquer crée une copie modifiable.
Functions.cache.getRetryCached(cache, func, ...)
return getCachedInternal(cache, false, func, ...)