Coverage Report

Created: 2025-06-10 07:27

/src/ghostpdl/pdf/pdf_array.h
Line
Count
Source
1
/* Copyright (C) 2018-2023 Artifex Software, Inc.
2
   All Rights Reserved.
3
4
   This software is provided AS-IS with no warranty, either express or
5
   implied.
6
7
   This software is distributed under license and may not be copied,
8
   modified or distributed except as expressly authorized under the terms
9
   of the license contained in the file LICENSE in this distribution.
10
11
   Refer to licensing information at http://www.artifex.com or contact
12
   Artifex Software, Inc.,  39 Mesa Street, Suite 108A, San Francisco,
13
   CA 94129, USA, for further information.
14
*/
15
16
/* array handling for the PDF interpreter */
17
18
#ifndef PDF_ARRAY_FUNCTIONS
19
#define PDF_ARRAY_FUNCTIONS
20
21
118M
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
zpdfops.c:pdfi_array_size
Line
Count
Source
21
997k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
Unexecuted instantiation: ghostpdf.c:pdfi_array_size
pdf_dict.c:pdfi_array_size
Line
Count
Source
21
992k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_array.c:pdfi_array_size
Line
Count
Source
21
776k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_xref.c:pdfi_array_size
Line
Count
Source
21
40.2k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
Unexecuted instantiation: pdf_int.c:pdfi_array_size
pdf_file.c:pdfi_array_size
Line
Count
Source
21
162k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_colour.c:pdfi_array_size
Line
Count
Source
21
247k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_pattern.c:pdfi_array_size
Line
Count
Source
21
2.05k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_gstate.c:pdfi_array_size
Line
Count
Source
21
2.68M
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_image.c:pdfi_array_size
Line
Count
Source
21
868k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_page.c:pdfi_array_size
Line
Count
Source
21
864k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_annot.c:pdfi_array_size
Line
Count
Source
21
516k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_mark.c:pdfi_array_size
Line
Count
Source
21
5.88k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_font.c:pdfi_array_size
Line
Count
Source
21
7.60M
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
Unexecuted instantiation: pdf_font0.c:pdfi_array_size
pdf_font1.c:pdfi_array_size
Line
Count
Source
21
40.2M
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
Unexecuted instantiation: pdf_font1C.c:pdfi_array_size
Unexecuted instantiation: pdf_fontps.c:pdfi_array_size
Unexecuted instantiation: pdf_font3.c:pdfi_array_size
Unexecuted instantiation: pdf_fontTT.c:pdfi_array_size
Unexecuted instantiation: pdf_font11.c:pdfi_array_size
Unexecuted instantiation: pdf_fmap.c:pdfi_array_size
pdf_text.c:pdfi_array_size
Line
Count
Source
21
35.4M
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_shading.c:pdfi_array_size
Line
Count
Source
21
273
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_func.c:pdfi_array_size
Line
Count
Source
21
30.8k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_trans.c:pdfi_array_size
Line
Count
Source
21
1.58k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_optcontent.c:pdfi_array_size
Line
Count
Source
21
125k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_check.c:pdfi_array_size
Line
Count
Source
21
916k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
Unexecuted instantiation: pdf_sec.c:pdfi_array_size
pdf_deref.c:pdfi_array_size
Line
Count
Source
21
63.9k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_obj.c:pdfi_array_size
Line
Count
Source
21
83.2k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_doc.c:pdfi_array_size
Line
Count
Source
21
711k
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
pdf_fapi.c:pdfi_array_size
Line
Count
Source
21
25.2M
static inline uint64_t pdfi_array_size(pdf_array *a) { return a->size; }
22
23
int pdfi_array_fetch(pdf_context *ctx, pdf_array *a, uint64_t index, pdf_obj **o, bool setref, bool cache);
24
/* The object returned by pdfi_array_get has its reference count incremented by 1 to
25
 * indicate the reference now held by the caller, in **o.
26
 */
27
static int inline pdfi_array_get(pdf_context *ctx, pdf_array *a, uint64_t index, pdf_obj **o)
28
356M
{
29
356M
    return pdfi_array_fetch(ctx, a, index, o, true, true);
30
356M
}
Unexecuted instantiation: zpdfops.c:pdfi_array_get
Unexecuted instantiation: ghostpdf.c:pdfi_array_get
pdf_dict.c:pdfi_array_get
Line
Count
Source
28
147k
{
29
147k
    return pdfi_array_fetch(ctx, a, index, o, true, true);
30
147k
}
pdf_array.c:pdfi_array_get
Line
Count
Source
28
133M
{
29
133M
    return pdfi_array_fetch(ctx, a, index, o, true, true);
30
133M
}
Unexecuted instantiation: pdf_xref.c:pdfi_array_get
Unexecuted instantiation: pdf_int.c:pdfi_array_get
pdf_file.c:pdfi_array_get
Line
Count
Source
28
6.27k
{
29
6.27k
    return pdfi_array_fetch(ctx, a, index, o, true, true);
30
6.27k
}
pdf_colour.c:pdfi_array_get
Line
Count
Source
28
263k
{
29
263k
    return pdfi_array_fetch(ctx, a, index, o, true, true);
30
263k
}
pdf_pattern.c:pdfi_array_get
Line
Count
Source
28
288
{
29
288
    return pdfi_array_fetch(ctx, a, index, o, true, true);
30
288
}
pdf_gstate.c:pdfi_array_get
Line
Count
Source
28
592
{
29
592
    return pdfi_array_fetch(ctx, a, index, o, true, true);
30
592
}
Unexecuted instantiation: pdf_image.c:pdfi_array_get
Unexecuted instantiation: pdf_page.c:pdfi_array_get
Unexecuted instantiation: pdf_annot.c:pdfi_array_get
pdf_mark.c:pdfi_array_get
Line
Count
Source
28
12.2k
{
29
12.2k
    return pdfi_array_fetch(ctx, a, index, o, true, true);
30
12.2k
}
pdf_font.c:pdfi_array_get
Line
Count
Source
28
172M
{
29
172M
    return pdfi_array_fetch(ctx, a, index, o, true, true);
30
172M
}
pdf_font0.c:pdfi_array_get
Line
Count
Source
28
1.09M
{
29
1.09M
    return pdfi_array_fetch(ctx, a, index, o, true, true);
30
1.09M
}
Unexecuted instantiation: pdf_font1.c:pdfi_array_get
pdf_font1C.c:pdfi_array_get
Line
Count
Source
28
807k
{
29
807k
    return pdfi_array_fetch(ctx, a, index, o, true, true);
30
807k
}
Unexecuted instantiation: pdf_fontps.c:pdfi_array_get
pdf_font3.c:pdfi_array_get
Line
Count
Source
28
74.2k
{
29
74.2k
    return pdfi_array_fetch(ctx, a, index, o, true, true);
30
74.2k
}
pdf_fontTT.c:pdfi_array_get
Line
Count
Source
28
7.36M
{
29
7.36M
    return pdfi_array_fetch(ctx, a, index, o, true, true);
30
7.36M
}
Unexecuted instantiation: pdf_font11.c:pdfi_array_get
Unexecuted instantiation: pdf_fmap.c:pdfi_array_get
pdf_text.c:pdfi_array_get
Line
Count
Source
28
32.8M
{
29
32.8M
    return pdfi_array_fetch(ctx, a, index, o, true, true);
30
32.8M
}
pdf_shading.c:pdfi_array_get
Line
Count
Source
28
4
{
29
4
    return pdfi_array_fetch(ctx, a, index, o, true, true);
30
4
}
Unexecuted instantiation: pdf_func.c:pdfi_array_get
Unexecuted instantiation: pdf_trans.c:pdfi_array_get
pdf_optcontent.c:pdfi_array_get
Line
Count
Source
28
64.4k
{
29
64.4k
    return pdfi_array_fetch(ctx, a, index, o, true, true);
30
64.4k
}
Unexecuted instantiation: pdf_check.c:pdfi_array_get
Unexecuted instantiation: pdf_sec.c:pdfi_array_get
Unexecuted instantiation: pdf_deref.c:pdfi_array_get
Unexecuted instantiation: pdf_obj.c:pdfi_array_get
Unexecuted instantiation: pdf_doc.c:pdfi_array_get
pdf_fapi.c:pdfi_array_get
Line
Count
Source
28
7.61M
{
29
7.61M
    return pdfi_array_fetch(ctx, a, index, o, true, true);
30
7.61M
}
31
32
static int inline pdfi_array_get_nocache(pdf_context *ctx, pdf_array *a, uint64_t index, pdf_obj **o)
33
114k
{
34
114k
    return pdfi_array_fetch(ctx, a, index, o, true, false);
35
114k
}
Unexecuted instantiation: zpdfops.c:pdfi_array_get_nocache
Unexecuted instantiation: ghostpdf.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_dict.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_array.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_xref.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_int.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_file.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_colour.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_pattern.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_gstate.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_image.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_page.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_annot.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_mark.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_font.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_font0.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_font1.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_font1C.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_fontps.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_font3.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_fontTT.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_font11.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_fmap.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_text.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_shading.c:pdfi_array_get_nocache
pdf_func.c:pdfi_array_get_nocache
Line
Count
Source
33
114k
{
34
114k
    return pdfi_array_fetch(ctx, a, index, o, true, false);
35
114k
}
Unexecuted instantiation: pdf_trans.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_optcontent.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_check.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_sec.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_deref.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_obj.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_doc.c:pdfi_array_get_nocache
Unexecuted instantiation: pdf_fapi.c:pdfi_array_get_nocache
36
37
void pdfi_free_array(pdf_obj *o);
38
int pdfi_array_alloc(pdf_context *ctx, uint64_t size, pdf_array **a);
39
int pdfi_array_from_stack(pdf_context *ctx, uint32_t indirect_num, uint32_t indirect_gen);
40
int pdfi_array_get_no_deref(pdf_context *ctx, pdf_array *a, uint64_t index, pdf_obj **o);
41
int pdfi_array_get_no_store_R(pdf_context *ctx, pdf_array *a, uint64_t index, pdf_obj **o);
42
int pdfi_array_get_type(pdf_context *ctx, pdf_array *a, uint64_t index, pdf_obj_type t, pdf_obj **o);
43
int pdfi_array_get_int(pdf_context *ctx, pdf_array *a, uint64_t index, int64_t *i);
44
int pdfi_array_get_number(pdf_context *ctx, pdf_array *a, uint64_t index, double *f);
45
int pdfi_array_put(pdf_context *ctx, pdf_array *a, uint64_t index, pdf_obj *o);
46
int pdfi_array_put_int(pdf_context *ctx, pdf_array *a, uint64_t index, int64_t val);
47
int pdfi_array_put_real(pdf_context *ctx, pdf_array *a, uint64_t index, double val);
48
49
bool pdfi_array_known(pdf_context *ctx, pdf_array *a, pdf_obj *, int *index);
50
51
void pdfi_normalize_rect(pdf_context *ctx, gs_rect *rect);
52
int pdfi_array_to_gs_rect(pdf_context *ctx, pdf_array *array, gs_rect *rect);
53
int pdfi_gs_rect_to_array(pdf_context *ctx, gs_rect *rect, pdf_array **new_array);
54
int pdfi_array_to_gs_matrix(pdf_context *ctx, pdf_array *array, gs_matrix *matrix);
55
int pdfi_array_to_num_array(pdf_context *ctx, pdf_array *array, double *out, int start, int size);
56
void pdfi_bbox_transform(pdf_context *ctx, gs_rect *bbox, gs_matrix *matrix);
57
58
int pdfi_array_fetch_recursing(pdf_context *ctx, pdf_array *a, uint64_t index, pdf_obj **o, bool setref, bool cache);
59
60
#endif