Natools

Check-in [46f6fa15e8]
Login
Overview
Comment:tools/smaz: add a dictionary Length accessor
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 46f6fa15e80848d20fe91a137f8ca6e42304e05d
User & Date: nat on 2017-05-22 19:45:43
Other Links: manifest | tags
Context
2017-05-23
20:15
tools/smaz: allow Optimization_Round to reduce dictionary size check-in: c3f4498cb8 user: nat tags: trunk
2017-05-22
19:45
tools/smaz: add a dictionary Length accessor check-in: 46f6fa15e8 user: nat tags: trunk
2017-05-21
20:44
tools/smaz: add support for not removing from pending list in a round check-in: 0423da4c74 user: nat tags: trunk
Changes

Modified tools/smaz.adb from [5cedb9b4e3] to [00e77a90e5].

184
185
186
187
188
189
190










191
192
193
194
195
196
197
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207







+
+
+
+
+
+
+
+
+
+







     return Natools.Smaz_Implementations.Base_64_Tools.Base_64_Digit
     is (Dict.Last_Code);
   function Last_Code (Dict : in Natools.Smaz.Dictionary)
     return Ada.Streams.Stream_Element
     is (Dict.Dict_Last);
      --  Return the last valid entry

   function Length (Dict : in Natools.Smaz_256.Dictionary) return Positive
     is (Dict.Offsets'Length + 1);
   function Length (Dict : in Natools.Smaz_4096.Dictionary) return Positive
     is (Dict.Offsets'Length + 1);
   function Length (Dict : in Natools.Smaz_64.Dictionary) return Positive
     is (Dict.Offsets'Length + 1);
   function Length (Dict : in Natools.Smaz.Dictionary) return Positive
     is (Dict.Offsets'Length);
      --  Return the number of entries in Dict

   procedure Print_Dictionary
     (Output : in Ada.Text_IO.File_Type;
      Dictionary : in Natools.Smaz_256.Dictionary;
      Hash_Package_Name : in String := "");
   procedure Print_Dictionary
     (Output : in Ada.Text_IO.File_Type;
      Dictionary : in Natools.Smaz_4096.Dictionary;
278
279
280
281
282
283
284


285
286
287
288
289
290
291
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303







+
+







         Counts : in out Dictionary_Counts);

      with procedure Filter_By_Count
        (Counter : in out Word_Counter;
         Threshold_Count : in String_Count);

      with function Last_Code (Dict : in Dictionary) return Dictionary_Entry;

      with function Length (Dict : in Dictionary) return Positive is <>;

      with procedure Print_Dictionary
        (Output : in Ada.Text_IO.File_Type;
         Dict : in Dictionary;
         Hash_Package_Name : in String := "")
        is <>;

428
429
430
431
432
433
434

435
436
437
438
439
440
441
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454







+







         --  Convert the input into a dictionary given the option in Handler

   end Dictionary_Subprograms;



   package body Dictionary_Subprograms is
      pragma Unreferenced (Length);

      function Adjust_Dictionary
        (Handler : in Callback'Class;
         Dict : in Dictionary;
         Corpus : in String_Lists.List;
         Method : in Methods)
        return Dictionary is