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
//! These indices are for library internal use only.
//! Use the `add_*` functions to get an index instead.

/// Index of the page (0-based)
#[derive(Copy, Clone, Debug, Eq, PartialEq)]
pub struct PdfPageIndex(pub(crate) usize);
/// Index of the layer on the nth page
#[derive(Copy, Clone, Debug, Eq, PartialEq)]
pub struct PdfLayerIndex(pub(crate) usize);

/// Index of the arbitrary content data
#[derive(Debug, Copy, Clone, Eq, PartialEq)]
pub struct PdfContentIndex(pub(crate) usize);

/// Index of a font
#[derive(Debug, Copy, Clone, Eq, PartialEq)]
pub struct FontIndex(pub(crate) PdfContentIndex);

impl Into<PdfContentIndex> for FontIndex {
    fn into(self) -> PdfContentIndex
    {
        self.0
    }
}

/// Index of a svg file
#[derive(Copy, Clone, Debug, Eq, PartialEq)]
pub struct SvgIndex(pub(crate) PdfContentIndex);

impl Into<PdfContentIndex> for SvgIndex {
    fn into(self) -> PdfContentIndex
    {
        self.0
    }
}