extractTableLookup method
Implementation
ExtractTableLookup? extractTableLookup(
AddressLookupTableAccount lookupTable,
) {
final writableIndexesAndKeys = _drainKeysFoundInLookupTable(
lookupTable.addresses,
(keyMeta) =>
!keyMeta.isSigner && !keyMeta.isInvoked && keyMeta.isWritable,
);
final readonlyIndexesAndKeys = _drainKeysFoundInLookupTable(
lookupTable.addresses,
(keyMeta) =>
!keyMeta.isSigner && !keyMeta.isInvoked && !keyMeta.isWritable,
);
if (writableIndexesAndKeys.$1.isEmpty &&
readonlyIndexesAndKeys.$1.isEmpty) {
return null;
}
return ExtractTableLookup(
lookup: AddressTableLookup(
accountKey: lookupTable.key,
writableIndexes: writableIndexesAndKeys.$1,
readonlyIndexes: readonlyIndexesAndKeys.$1,
),
readable: readonlyIndexesAndKeys.$2,
writable: writableIndexesAndKeys.$2,
);
}