This file is indexed.

/usr/share/z88dk/include/rect.h is in z88dk-data 1.8.ds1-10.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 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
66
67
68
69
70
71
72
73
#ifndef _RECT_H
#define _RECT_H

/*
 * Points, Intervals and Rectangles
 * 05.2006 aralbrec
 *
 */

#include <sys/types.h>

/*
 * A library of routines that can check for and compute intersections amongst
 * points, intervals and rectangles.  8-bit and 16-bit coordinates are supported
 * by two sets of subroutines.  In both cases, the coordinate space wraps so
 * that, for example, an 8-bit interval beginning at coordinate 250 with width
 * 50 occupies the points [250,255]+[0,43] inclusive (ie 250 right through 43).
 *
 */

struct r_Ival8 {

   uchar coord;              // +0
   uchar width;              // +1

};

struct r_Ival16 {

   uint coord;               // +0
   uint width;               // +2
   
};

struct r_Rect8 {

   uchar x;                  // +0  struct r_Ival8
   uchar width;              // +1
   uchar y;                  // +2  struct r_Ival8
   uchar height;             // +3
   
};

struct r_Rect16 {

   uint x;                   // +0  struct r_Ival16
   uint width;               // +2
   uint y;                   // +4  struct r_Ival16
   uint height;              // +6
   
};

// Detect whether points, intervals and rectangles intersect

extern int __LIB__ r_IsPtInIval8(uchar x, struct r_Ival8 *i);
extern int __LIB__ r_IsPtInRect8(uchar x, uchar y, struct r_Rect8 *r);
extern int __LIB__ r_IsIvalInIval8(struct r_Ival8 *i1, struct r_Ival8 *i2);
extern int __LIB__ r_IsRectInRect8(struct r_Rect8 *r1, struct r_Rect8 *r2);

extern int __LIB__ r_IsPtInIval16(uint x, struct r_Ival16 *i);
extern int __LIB__ r_IsPtInRect16(uint x, uint y, struct r_Rect16 *r);
extern int __LIB__ r_IsIvalInIval16(struct r_Ival16 *i1, struct r_Ival16 *i2);
extern int __LIB__ r_IsRectInRect16(struct r_Rect16 *r1, struct r_Rect16 *r2);

// Return the result of interval and rectangle intersections

extern int __LIB__ r_IntersectIval8(struct r_Ival8 *i1, struct r_Ival8 *i2, struct r_Ival8 *result);
extern int __LIB__ r_IntersectRect8(struct r_Rect8 *r1, struct r_Rect8 *r2, struct r_Rect8 *result);

extern int __LIB__ r_IntersectIval16(struct r_Ival16 *i1, struct r_Ival16 *i2, struct r_Ival16 *result);
extern int __LIB__ r_IntersectRect16(struct r_Rect16 *r1, struct r_Rect16 *r2, struct r_Rect16 *result);

#endif