There are places where the same storage variable is accessed multiple times in the same function. It would be more gas efficient to cache these variables and re-use them where necessary. E.g. function createRecord accesses records[_nftId].reserve 2 times in a require statement. function _transferToReserveAndStore accesses "reserve" 4 times. function isResolverCached accesses addressCache[name] 2 times.
Also, can save some gas here if you use local variables instead:
Handle
pauliax
Vulnerability details
Impact
There are places where the same storage variable is accessed multiple times in the same function. It would be more gas efficient to cache these variables and re-use them where necessary. E.g. function createRecord accesses records[_nftId].reserve 2 times in a require statement. function _transferToReserveAndStore accesses "reserve" 4 times. function isResolverCached accesses addressCache[name] 2 times.
Also, can save some gas here if you use local variables instead:
There might be more places where this suggestion can be applied. Consider caching repeated storage access to save some gas.