File: typemap

package info (click to toggle)
libterm-readline-gnu-perl 1.24-2~bpo70%2B1
  • links: PTS, VCS
  • area: main
  • in suites: wheezy-backports
  • size: 556 kB
  • sloc: perl: 1,664; ansic: 112; makefile: 10
file content (38 lines) | stat: -rw-r--r-- 853 bytes parent folder | download | duplicates (2)
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
#	typemap for Term::ReadLine::Gnu
#
#	$Id: typemap 438 2014-02-03 14:40:47Z hayashi $

const char *	T_PV
CONST char *	T_PV
Keymap		T_PTROBJ
Function *	T_PTROBJ
rl_command_func_t *	T_PTROBJ
FILE *		T_STDIO
HIST_ENTRY *	T_HIST_ENTRY
t_xstr		T_XSTR

########################################################################
INPUT
T_STDIO
	$var = PerlIO_findFILE(IoIFP(sv_2io($arg)))

########################################################################
OUTPUT
T_STDIO
	{
	    GV *gv = newGVgen("$Package");
	    PerlIO *fp = PerlIO_importFILE($var,0);
	    if ( fp && do_open(gv, "+<&", 3, FALSE, 0, 0, fp) )
		sv_setsv($arg, sv_bless(newRV((SV*)gv), gv_stashpv("$Package",1)));
	    else
		$arg = &PL_sv_undef;
	}
T_XSTR
	if ($var) {
	  sv_setpv($arg, $var);
	  xfree($var);
	}
T_HIST_ENTRY
	if ($var && $var->line) {
	  sv_setpv($arg, $var->line);
	}