1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
//! XPT v5 constants and marker records.
//!
//! This module defines the magic strings and marker records used in XPT v5 files.
/// The length of a single record in bytes.
pub const RECORD_LEN: usize = 80;
/// First library header record.
///
/// Format: "HEADER RECORD*******LIBRARY HEADER RECORD!!!!!!!000000000000000000000000000000 "
pub const LIBRARY_HEADER: & =
b"HEADER RECORD*******LIBRARY HEADER RECORD!!!!!!!000000000000000000000000000000 ";
/// First header record marker (SAS identifier).
///
/// Format: "SAS SAS SASLIB " followed by version info and timestamp.
pub const HEADER_RECORD_1: & = b"SAS SAS SASLIB ";
/// Second header record marker.
///
/// Format: Typically contains the dataset modified timestamp.
pub const HEADER_RECORD_2: & = b" ";
/// Member header record.
///
/// Format: "HEADER RECORD*******MEMBER HEADER RECORD!!!!!!!000000000000000001600000000140 "
pub const MEMBER_HEADER: & =
b"HEADER RECORD*******MEMBER HEADER RECORD!!!!!!!000000000000000001600000000140 ";
/// Member header data record marker.
///
/// Format: "HEADER RECORD*******DSCRPTR HEADER RECORD!!!!!!!000000000000000000000000000000 "
pub const MEMBER_HEADER_DATA: & =
b"HEADER RECORD*******DSCRPTR HEADER RECORD!!!!!!!000000000000000000000000000000 ";
/// NAMESTR header record template.
///
/// The last digits represent the number of variables (must be filled in).
/// Format: "HEADER RECORD*******NAMESTR HEADER RECORD!!!!!!!000000NNNNNN00000000000000000000 "
pub const NAMESTR_HEADER: & = b"HEADER RECORD*******NAMESTR HEADER RECORD!!!!!!!000000";
/// Observation header record.
///
/// Format: "HEADER RECORD*******OBS HEADER RECORD!!!!!!!000000000000000000000000000000 "
pub const OBS_HEADER: & =
b"HEADER RECORD*******OBS HEADER RECORD!!!!!!!000000000000000000000000000000 ";
/// NAMESTR record length in bytes.
pub const NAMESTR_LEN: usize = 140;
/// Pad character (ASCII space).
pub const PAD_CHAR: u8 = 0x20;