Source file : bzip2-encoding.ads
1 -- BZip2.Encoding - a standalone, generic BZip2 encoder.
2 ------------------
3 --
4 -- Examples of use:
5 -- BZip2_Enc, a standalone encoder to .bz2 files
6 -- Zip.Compress.BZip2_E, creates Zip files entries with BZip2 encoding
7
8 -- Legal licensing note:
9
10 -- Copyright (c) 2024 Gautier de Montmollin
11 -- SWITZERLAND
12
13 -- Permission is hereby granted, free of charge, to any person obtaining a copy
14 -- of this software and associated documentation files (the "Software"), to deal
15 -- in the Software without restriction, including without limitation the rights
16 -- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
17 -- copies of the Software, and to permit persons to whom the Software is
18 -- furnished to do so, subject to the following conditions:
19
20 -- The above copyright notice and this permission notice shall be included in
21 -- all copies or substantial portions of the Software.
22
23 -- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
24 -- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
25 -- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
26 -- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
27 -- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
28 -- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
29 -- THE SOFTWARE.
30
31 -- NB: this is the MIT License, as found on the site
32 -- http://www.opensource.org/licenses/mit-license.php
33
34 with Interfaces;
35
36 package BZip2.Encoding is
37
38 type Compression_Option is
39 (block_100k,
40 block_400k,
41 block_900k);
42
43 subtype Stream_Size_Type is Interfaces.Integer_64;
44
45 unknown_size : constant := -1;
46
47 generic
48 -- Input of data:
49 with function Read_Byte return Byte;
50 with function More_Bytes return Boolean;
51 -- Output of LZMA-compressed data:
52 with procedure Write_Byte (b : Byte);
53 --
54 procedure Encode
55 (option : Compression_Option := block_900k;
56 size_hint : Stream_Size_Type := unknown_size);
57
58 end BZip2.Encoding;
Web view of Ada source code generated by GNATHTML, project: ALI_Parse version 1.0.
Zip-Ada: Ada library for zip archive files (.zip).
Ada programming.
Some news about Zip-Ada and other Ada projects
on Gautier's blog.