File: php4.h

package info (click to toggle)
swig1.3 1.3.11-1
  • links: PTS
  • area: main
  • in suites: woody
  • size: 6,852 kB
  • ctags: 4,764
  • sloc: ansic: 20,489; cpp: 10,052; sh: 7,256; yacc: 2,669; makefile: 2,381; python: 873; java: 762; tcl: 686; perl: 474; lisp: 444; ruby: 370; php: 367
file content (48 lines) | stat: -rw-r--r-- 1,690 bytes parent folder | download
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
/*******************************************************************************
 * Simplified Wrapper and Interface Generator  (SWIG)
 * 
 * Author : David Beazley
 *
 * Department of Computer Science        
 * University of Chicago
 * 1100 E 58th Street
 * Chicago, IL  60637
 * beazley@cs.uchicago.edu
 *
 * Please read the file LICENSE for the copyright and terms by which SWIG
 * can be used and distributed.
 *******************************************************************************/

class PHP4 : public Language {
public :
	virtual void main(int, char *argv[]);
	virtual int top(Node *n);
	virtual int functionWrapper(Node *n);
	virtual int variableWrapper(Node *n);
	virtual int constantWrapper(Node *n);
	virtual void add_native(char *, char *, SwigType *, ParmList *);
	virtual void create_command(char *, char *);

	// Modular Support
	
	virtual int  staticmembervariableHandler(Node *);
	virtual int  staticmemberfunctionHandler(Node *);
	virtual int  membervariableHandler(Node *);
	virtual int  memberfunctionHandler(Node *);
	virtual int  memberconstantHandler(Node *);
	virtual int  constructorHandler(Node *n);
	virtual int  destructorHandler(Node *n);

	virtual int  classHandler(Node *n);
	virtual int  classforwardDeclaration(Node *n);
	virtual int  typedefHandler(Node *);

	virtual void pragma(char *lang, char *code, char *value);


	void emit_classdef();
	void emit_shadow_classdef();
	void SwigToPhpType(SwigType *t, String_or_char *pname, String *php_type, int shadow_flag);
	char *PhpTypeFromTypemap(char *op, SwigType *t, String_or_char *pname, String_or_char *iname);
	void cpp_func(char *iname, SwigType *t, ParmList *l, String *php_function_name);
};