Artifact
49cbb786cb6de811b928616bcae963943ed240c7:
0000: 28 64 65 66 69 6e 65 2d 66 6f 72 65 69 67 6e 2d (define-foreign-
0010: 74 79 70 65 20 69 68 61 6e 64 6c 65 20 28 63 2d type ihandle (c-
0020: 70 6f 69 6e 74 65 72 20 22 49 68 61 6e 64 6c 65 pointer "Ihandle
0030: 22 29 0a 09 28 69 68 61 6e 64 6c 65 2d 3e 70 6f ")..(ihandle->po
0040: 69 6e 74 65 72 20 23 66 29 0a 09 28 70 6f 69 6e inter #f)..(poin
0050: 74 65 72 2d 3e 69 68 61 6e 64 6c 65 20 23 66 29 ter->ihandle #f)
0060: 29 0a 0a 28 64 65 66 69 6e 65 2d 66 6f 72 65 69 )..(define-forei
0070: 67 6e 2d 74 79 70 65 20 69 68 61 6e 64 6c 65 2d gn-type ihandle-
0080: 6c 69 73 74 20 6e 6f 6e 6e 75 6c 6c 2d 70 6f 69 list nonnull-poi
0090: 6e 74 65 72 2d 76 65 63 74 6f 72 0a 09 69 68 61 nter-vector..iha
00a0: 6e 64 6c 65 2d 6c 69 73 74 2d 3e 70 6f 69 6e 74 ndle-list->point
00b0: 65 72 2d 76 65 63 74 6f 72 29 0a 0a 28 64 65 66 er-vector)..(def
00c0: 69 6e 65 2d 66 6f 72 65 69 67 6e 2d 74 79 70 65 ine-foreign-type
00d0: 20 6e 6f 6e 6e 75 6c 6c 2d 69 68 61 6e 64 6c 65 nonnull-ihandle
00e0: 20 28 6e 6f 6e 6e 75 6c 6c 2d 63 2d 70 6f 69 6e (nonnull-c-poin
00f0: 74 65 72 20 22 49 68 61 6e 64 6c 65 22 29 0a 09 ter "Ihandle")..
0100: 28 69 68 61 6e 64 6c 65 2d 3e 70 6f 69 6e 74 65 (ihandle->pointe
0110: 72 20 23 74 29 0a 09 28 70 6f 69 6e 74 65 72 2d r #t)..(pointer-
0120: 3e 69 68 61 6e 64 6c 65 20 23 74 29 29 0a 0a 28 >ihandle #t))..(
0130: 64 65 66 69 6e 65 2d 66 6f 72 65 69 67 6e 2d 74 define-foreign-t
0140: 79 70 65 20 69 73 74 61 74 75 73 20 69 6e 74 0a ype istatus int.
0150: 09 69 73 74 61 74 75 73 2d 3e 69 6e 74 65 67 65 .istatus->intege
0160: 72 0a 09 69 6e 74 65 67 65 72 2d 3e 69 73 74 61 r..integer->ista
0170: 74 75 73 29 0a 0a 28 64 65 66 69 6e 65 2d 66 6f tus)..(define-fo
0180: 72 65 69 67 6e 2d 74 79 70 65 20 69 6e 61 6d 65 reign-type iname
0190: 2f 75 70 63 61 73 65 20 63 2d 73 74 72 69 6e 67 /upcase c-string
01a0: 0a 09 28 69 6e 61 6d 65 2d 3e 73 74 72 69 6e 67 ..(iname->string
01b0: 20 27 75 70 63 61 73 65 29 0a 09 28 73 74 72 69 'upcase)..(stri
01c0: 6e 67 2d 3e 69 6e 61 6d 65 20 27 75 70 63 61 73 ng->iname 'upcas
01d0: 65 29 29 0a 0a 28 64 65 66 69 6e 65 2d 66 6f 72 e))..(define-for
01e0: 65 69 67 6e 2d 74 79 70 65 20 69 6e 61 6d 65 2f eign-type iname/
01f0: 64 6f 77 6e 63 61 73 65 20 63 2d 73 74 72 69 6e downcase c-strin
0200: 67 0a 09 28 69 6e 61 6d 65 2d 3e 73 74 72 69 6e g..(iname->strin
0210: 67 20 27 64 6f 77 6e 63 61 73 65 29 0a 09 28 69 g 'downcase)..(i
0220: 6e 61 6d 65 2d 3e 73 74 72 69 6e 67 20 27 64 6f name->string 'do
0230: 77 6e 63 61 73 65 29 29 0a wncase)).