private static PropertyRecord[] ExtractPropertyRecords(RecordAccess <PropertyRecord, PrimitiveRecord> propertyRecordAccess, long nextProp) { IList <PropertyRecord> result = new List <PropertyRecord>(); while (!Record.NULL_REFERENCE.@is(nextProp)) { PropertyRecord record = propertyRecordAccess.GetIfLoaded(nextProp).forReadingLinkage(); result.Add(record); nextProp = record.NextProp; } return(result.ToArray()); }