From 82e8b9ea0d83d54eaf6e2b2363c06a0ab5106519 Mon Sep 17 00:00:00 2001 From: PaulMansour Date: Tue, 8 Feb 2022 17:49:35 -0700 Subject: [PATCH] Simplify block reading --- APLSource/Main/GetSheetData.aplf | 4 ++-- APLSource/Main/ProcessBlock.aplf | 2 +- APLSource/Main/ReadBlock.aplf | 5 ----- APLSource/Main/ReadRowBlock.aplf | 9 +++++++-- APLSource/Main/ReadRowBlockFirst.aplf | 6 ------ 5 files changed, 10 insertions(+), 16 deletions(-) delete mode 100644 APLSource/Main/ReadBlock.aplf delete mode 100644 APLSource/Main/ReadRowBlockFirst.aplf diff --git a/APLSource/Main/GetSheetData.aplf b/APLSource/Main/GetSheetData.aplf index cdd57c3..9d0e2a9 100644 --- a/APLSource/Main/GetSheetData.aplf +++ b/APLSource/Main/GetSheetData.aplf @@ -15,14 +15,14 @@ p.Buffer←CreateBuffer p.BlockSize p.FirstRow←⍬ p.Fragment←'' - p.Blocks←0 + p.Block←0 p.EndOfRows←0 p.(Data Rows Columns Header)←⊂⍬ _←ProcessBlocks p _←Dispose¨z p.File p.UniqueColumns←{⍵[⍋⍵]}∪∊p.Columns _←GetColumnFormatCodes p - 1=p.Blocks:p + 1=p.Block:p p.Data←p AssembleColumn¨p.UniqueColumns p.Header←(p.UniqueColumns∊↑p.Columns)\p.Header p diff --git a/APLSource/Main/ProcessBlock.aplf b/APLSource/Main/ProcessBlock.aplf index eb55384..9f264cf 100644 --- a/APLSource/Main/ProcessBlock.aplf +++ b/APLSource/Main/ProcessBlock.aplf @@ -26,7 +26,7 @@ j←↓⍉↑ri rc ⍝ Scatter points d←(nr,≢uc)⍴⊂'' ⍝ Default d[j]←v ⍝ Scatter point - p.Blocks>1:uc(↑¨↓⍉d) + p.Block>1:uc(↑¨↓⍉d) h←wi.HeaderRows p.FirstRow←(h=¯1++\0=m[;0])⌿m p.Header←h↑d diff --git a/APLSource/Main/ReadBlock.aplf b/APLSource/Main/ReadBlock.aplf deleted file mode 100644 index 444b597..0000000 --- a/APLSource/Main/ReadBlock.aplf +++ /dev/null @@ -1,5 +0,0 @@ - ReadBlock←{ - ⍵.Blocks+←1 - r←⍵.File.ReadBlock ⍵.(Buffer 0 BlockSize) - ⍵.Fragment,r↑⍵.Buffer.Clone - } diff --git a/APLSource/Main/ReadRowBlock.aplf b/APLSource/Main/ReadRowBlock.aplf index dcc5b66..5f0026f 100644 --- a/APLSource/Main/ReadRowBlock.aplf +++ b/APLSource/Main/ReadRowBlock.aplf @@ -1,5 +1,10 @@ ReadRowBlock←{ ⍵.EndOfRows:'' - 0=⍵.Blocks:ReadRowBlockFirst ⍵ - ⍵ TrimRowBlock ReadBlock ⍵ + ⍵.Block+←1 + r←⍵.File.ReadBlock ⍵.(Buffer 0 BlockSize) + v←⍵.Fragment,r↑⍵.Buffer.Clone + ⍵.Block>1:⍵ TrimRowBlock v + ∨/''⍷v:'' + n←11+⊃⍸''⍷v + ⍵ TrimRowBlock n↓v } diff --git a/APLSource/Main/ReadRowBlockFirst.aplf b/APLSource/Main/ReadRowBlockFirst.aplf deleted file mode 100644 index a6a3445..0000000 --- a/APLSource/Main/ReadRowBlockFirst.aplf +++ /dev/null @@ -1,6 +0,0 @@ - ReadRowBlockFirst←{ - v←ReadBlock ⍵ - ∨/''⍷v:'' - n←11+⊃⍸''⍷v - ⍵ TrimRowBlock n↓v - }