1 
2 MODULE = MIME::Fast		PACKAGE = MIME::Fast::Filter::Func	PREFIX=g_mime_filter_func_
3 
4  # unsupported:
5  # g_mime_filter_filter
6  # g_mime_filter_complete
7  # g_mime_filter_backup
8 
9 MIME::Fast::Filter::Func
10 g_mime_filter_func_new(Class, svstep, svcomplete = 0, svsizeout = 0, svdata = 0)
11     CASE: items == 5
12     	const char *		Class
13         SV *			svstep
14 	SV *			svcomplete
15 	SV *			svsizeout
16         SV *			svdata
17     PREINIT:
18 	struct _user_data_sv    *data;
19     CODE:
20 	data = g_new0 (struct _user_data_sv, 1);
21 	data->svuser_data  = newSVsv(svdata);
22 	data->svfunc  = newSVsv(svstep);
23 	data->svfunc_complete = newSVsv(svcomplete);
24 	data->svfunc_sizeout  = newSVsv(svsizeout);
25 	RETVAL = g_mime_filter_func_new (call_filter_step_func,
26 			call_filter_complete_func, call_filter_sizeout_func, data);
27 	plist = g_list_prepend (plist, RETVAL);
28     OUTPUT:
29 	RETVAL
30     CASE: items == 4
31     	const char *		Class
32         SV *			svstep
33 	SV *			svcomplete
34 	SV *			svsizeout
35     PREINIT:
36 	struct _user_data_sv    *data;
37     CODE:
38 	data = g_new0 (struct _user_data_sv, 1);
39 	data->svfunc  = newSVsv(svstep);
40 	data->svfunc_complete = newSVsv(svcomplete);
41 	data->svfunc_sizeout  = newSVsv(svsizeout);
42 	RETVAL = g_mime_filter_func_new(call_filter_step_func,
43 			call_filter_complete_func, call_filter_sizeout_func, data);
44 	plist = g_list_prepend (plist, RETVAL);
45     OUTPUT:
46 	RETVAL
47     CASE: items == 3
48     	const char *		Class
49         SV *			svstep
50 	SV *			svcomplete
51     PREINIT:
52 	struct _user_data_sv    *data;
53     CODE:
54 	data = g_new0 (struct _user_data_sv, 1);
55 	data->svfunc  = newSVsv(svstep);
56 	data->svfunc_complete = newSVsv(svcomplete);
57 	RETVAL = g_mime_filter_func_new(call_filter_step_func,
58 			call_filter_complete_func, NULL, data);
59 	plist = g_list_prepend (plist, RETVAL);
60     OUTPUT:
61 	RETVAL
62     CASE: items == 2
63     	const char *		Class
64         SV *			svstep
65     PREINIT:
66 	struct _user_data_sv    *data;
67     CODE:
68 	data = g_new0 (struct _user_data_sv, 1);
69 	data->svfunc  = newSVsv(svstep);
70 	data->svfunc_complete = newSVsv(svstep);
71 	RETVAL = g_mime_filter_func_new(call_filter_step_func,
72 			call_filter_complete_func, NULL, data);
73 	plist = g_list_prepend (plist, RETVAL);
74     OUTPUT:
75 	RETVAL
76 
77